jQuery1.6 使用方法一


Posted in Javascript onNovember 23, 2011

error: function( msg ) {//声明错误
throw msg;
},
parseJSON: function( data ) {//把字符串转换成json格式
if ( typeof data !== "string" || !data ) {//首先判断是否存在,是否为字符串
return null;
}
data = jQuery.trim( data );//去掉前后空白
if ( window.JSON && window.JSON.parse ) {//高级版本有原生JSON转换函数window.JSON
return window.JSON.parse( data );
}
if ( rvalidchars.test( data.replace( rvalidescape, "@" )//
.replace( rvalidtokens, "]" )//
.replace( rvalidbraces, "")) ) {//进行简单的检验,对{true:1},{"a",{}}....都通过
//rvalidchars = /^[\],:{}\s]*$/,
//rvalidescape = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,u[0-9a-fA-F]{4}匹配中英文和转义符
//rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,//匹配字符串中不含有“\\”、“\n”、“\r”、布尔值、null、数字
//rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,匹配(开始为空或者:或者,)(后面跟随零或多个空格,最后跟随[) 如 [、: [、,[、, [等等
return (new Function( "return " + data ))();

}
jQuery.error( "Invalid JSON: " + data );
},
parseXML: function( data , xml , tmp ) {不明白传入xml tmp用处
if ( window.DOMParser ) { // 标准

//DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。要使用 DOMParser,使用不带参数的构造函数来实例化它,然后调用其

 //parseFromString() 方法:
tmp = new DOMParser();
xml = tmp.parseFromString( data , "text/xml" );
} else { // IE
xml = new ActiveXObject( "Microsoft.XMLDOM" );
xml.async = "false";
xml.loadXML( data );
}
tmp = xml.documentElement;
if ( ! tmp || ! tmp.nodeName || tmp.nodeName === "parsererror" ) {//判断返回的结果是否为空,是否不是节点,是否报错
jQuery.error( "Invalid XML: " + data );
}
return xml;
}

globalEval: function( data ) {//把data变为可执行
if ( data && rnotwhite.test( data ) ) {//检查是否存在,是否不为空
( window.execScript || function( data ) {
window[ "eval" ].call( window, data );//window.eval.call(window,data)这种方式,在某些情况下IE下也不能改变上下环境所以只能针对IE使用window.execScript,其他流浪器使用window.eval.call(window,data);
} )( data );
}
},
nodeName: function( elem, name ) {
return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();//判断是否是节点,节点名默认是大写,为了保证能够正确判断,都转化成相同格式(大写)
},

each: function( object, callback, args ) {
var name, i = 0,
length = object.length,//window,String,Function,Array类型的不为undefined;..
isObj = length === undefined || jQuery.isFunction( object );//主要为了区分开对象和数组
if ( args ) {//如果没有传入参数,会用默认的名和值来作为参数,如果有参数,就使用传入的参数
if ( isObj ) {
for ( name in object ) {
if ( callback.apply( object[ name ], args ) === false ) {
break;
}
}
} else {
for ( ; i < length; ) {
if ( callback.apply( object[ i++ ], args ) === false ) {
break;
}
}
}
} else {//如果没有传入参数,
if ( isObj ) {
for ( name in object ) {// object[ name ]值作为当前对象,把名和值作为参数
if ( callback.call( object[ name ], name, object[ name ] ) === false ) {//判断回调函数返回值,决定是否继续循环
break;
}
}
} else {
for ( ; i < length; ) {//object[ i ]值作为当前对象,把名(i为先后顺序)和值作为参数
if ( callback.call( object[ i ], i, object[ i++ ] ) === false ) {//判断回调函数返回值,决定是否继续循环
break;
}
}
}
}
return object;
},

trim: trim ?//检测是否有原生trim方法,如果参数text !=就进行截取前后空白,否则返回空,没有原生trim的话,强制转换为字符串再进行正则替换,否则报错,使用正则替换(trimLeft = /^\s+/,//匹配左空白,trimRight = /\s+$/,//匹配右空白),
function( text ) {
return text == null ?
"" :
trim.call( text );
} :
function( text ) {
return text == null ?
"" :
text.toString().replace( trimLeft, "" ).replace( trimRight, "" );
},

Javascript 相关文章推荐
jquery下jstree简单应用 - v1.0
Apr 14 Javascript
jQuery获取注册信息并提示实现代码
Apr 21 Javascript
js实现目录定位正文示例
Nov 14 Javascript
多个$(document).ready()的执行顺序实例分析
Jul 26 Javascript
JS控制弹出新页面窗口位置和大小的方法
Mar 02 Javascript
JS去除iframe滚动条的方法
Apr 01 Javascript
Linux下为Node.js程序配置MySQL或Oracle数据库的方法
Mar 19 Javascript
AngularJS上拉加载问题解决方法
May 23 Javascript
jQuery中ScrollTo用法示例
Sep 04 Javascript
一份超级详细的Vue-cli3.0使用教程【推荐】
Nov 15 Javascript
js实现双色球效果
Aug 02 Javascript
JS前端使用canvas实现物体的点选示例
Aug 05 Javascript
JS 表单验证大全
Nov 23 #Javascript
JavaScript中的16进制字符(改进)
Nov 21 #Javascript
日期处理的js库(迷你版)--自建js库总结
Nov 21 #Javascript
js 完美图片新闻轮转效果,腾讯大粤网首页图片轮转改造而来
Nov 21 #Javascript
页面调用单个swf文件,嵌套出多个方法。
Nov 21 #Javascript
javascript中xml操作实现代码
Nov 21 #Javascript
js调用activeX获取u盘序列号的代码
Nov 21 #Javascript
You might like
正则表达式语法
2006/10/09 Javascript
让你的WINDOWS同时支持MYSQL4,MYSQL4.1,MYSQL5X
2006/12/06 PHP
Zend Framework实现自定义过滤器的方法
2016/12/09 PHP
php文件上传类的分享
2017/07/06 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
2020/02/15 PHP
Jquery拖拽并简单保存的实现代码
2010/11/28 Javascript
JQUERY对单选框(radio)操作的小例子
2013/04/25 Javascript
js中文逗号转英文实现
2014/02/11 Javascript
jquery获取radio值(单选组radio)
2014/10/16 Javascript
jQuery事件绑定和委托实例
2014/11/25 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
js实现手机拍照上传功能
2017/01/17 Javascript
Bootstrap table简单使用总结
2017/02/15 Javascript
jQuery响应滚动条事件功能示例
2017/10/14 jQuery
vue 父组件中调用子组件函数的方法
2019/06/06 Javascript
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
2019/07/11 jQuery
vue实现移动端拖动排序
2020/08/21 Javascript
jQuery+ajax实现用户登录验证
2020/09/13 jQuery
vue 二维码长按保存和复制内容操作
2020/09/22 Javascript
python爬虫爬取某站上海租房图片
2018/02/04 Python
使用virtualenv创建Python环境及PyQT5环境配置的方法
2019/09/10 Python
opencv-python 提取sift特征并匹配的实例
2019/12/09 Python
python内置模块collections知识点总结
2019/12/19 Python
浅谈selenium如何应对网页内容需要鼠标滚动加载的问题
2020/03/14 Python
日本最大的旅游网站:Rakuten Travel(乐天旅游)
2018/08/02 全球购物
介绍一下Python中webbrowser的用法
2013/05/07 面试题
党委书记岗位职责
2013/11/24 职场文书
关于爱情的广播稿
2014/01/16 职场文书
经典团队口号
2014/06/06 职场文书
感恩老师演讲稿400字
2014/08/28 职场文书
镇人大副主席民主生活会对照检查材料思想汇报
2014/10/01 职场文书
2014年电话销售工作总结
2014/12/01 职场文书
高中生自我评价范文2015
2015/03/03 职场文书
班级班风口号大全
2015/12/25 职场文书
基于CSS3画一个iPhone
2021/04/21 HTML / CSS
解决golang在import自己的包报错的问题
2021/04/29 Golang