15

原生JS复制文本到手机剪切板

复制文本到剪切板,兼容PC与WAP,复制文本到手机剪切板,兼容电脑与手机移动设备

方法一:

方法二:

 

十二 11

使用iframe给页面的localStorage扩容

浏览器提供的localStorage本地存储的最大空间是5M,如果不够用呢,这时候就需要考虑来给localStorage扩容。

思路如下:

  1. 在【A域】下引入【B域】,【A域】空间足够时,读写由【A域】来完成,数据存在【A域】下;当【A域】空间不够时,读写由【B域】来完成,数据存在【B域】下
  2. 【A域】空间不够需要在【B域】读写时,通过postMessage 向【B域】发送跨域消息,【B域】监听跨域消息,在接到指定的消息时进行读写操作
  3. 【B域】接到跨域消息时,如果是写入删除可以不做什么,如果是读取,就要先读取本域本地数据通过postMessage向父页面发送消息
  4. 【A域】在读取【B域】数据时就需要监听来自【B域】的跨域消息 Continue reading
十二 11

js中子框架和父框架的通信iframe

iframe父子框架通信

1.获取父框架的内容

window.parent.name;//name为你要获取的值的名称

parent.document.getElementById(“id”); //根据id获取父框架对象

parent.document.getElementByTagName(“name”); //根据name获取父框架对象

2.获取子框架的内容

document.getElementById(“id”).contentWindow.document.getElementById(“childId”);

根据子窗口Id获取子框架内容,根据子框架的childId,获取框架对象。

document.getElementById(“id”).contentWindow可以获得子窗口的window对象 Continue reading

十二 04

原生js封装ajax:传json,str,excel文件上传表单提交

封装ajax,ajax封装,原生js

由于项目中需要在提交ajax前设置header信息,jquery的ajax实现不了,我们自己封装几个常用的ajax方法。

jQuery的ajax普通封装

原生ajax封装,设置header,传json Continue reading

十二 04

javascript中for循环,同步阻塞式解决方案(for同步)

利用闭包原理实现javascript中for同步阻塞式,for同步

 

十一 30

jquery.lazyload.js 已封装

jquery.lazyload.js封装下载

Lazy Load是一个用js编写的jQuery插件,用来实现图片的延迟加载。只有在浏览器可视区域的图片才会被加载,没有滚动到的区域img标签上会有一个占位图片,而真实图片不会被载入。当页面比较长,图片比较多的时候,延迟加载图片可以加快页面加载速度,在某些情况下降低服务器负担。

使用方法

1、lazyload.js依赖jquery或者zepto.js。

2、将图片的真实路径放在img的data-original属性上。给img标签增加一个自定义的类名如:lazyload,方便js调用。 Continue reading

十一 30

jquery.form.js 已封装

jquery.form.js封装下载

插件优点

  1. 简简单单几句代码,我们就可以实现表单的提交,并且可灵活通过ajaxSubmit()函数基于任何事件的触发实现表单异步提交。
  2. 支持文件上传功能,并在新浏览器中支持进度条更新。
  3. 与jQuery库完美结合,支持jQuery.ajax()函数触发的各种事件,支持jQuery.ajax()中所传递的参数。

使用方法

插件提供ajaxSubmit和ajaxForm两种表单提交方式,注意:不要对同一个表单同时使用两种方式。 Continue reading

十一 30

jquery.cookie.js

jquery.cookie.js下载

jquery.cookie() 方法:一个轻量级的cookie 插件,可以读取、写入、删除 cookie。

使用方法

1.新添加一个会话 cookie:

  1. $.cookie(‘the_cookie’, ‘the_value’);

注:当没有指明 cookie有效时间时,所创建的cookie有效期默认到用户关闭浏览器为止,所以被称为“会话cookie(session cookie)”。 Continue reading