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创建div 实现代码
Apr 27 Javascript
jquery parent和parents的区别分析
Oct 02 Javascript
使用jquery写个更改表格行顺序的小功能
Apr 29 Javascript
JavaScript中的原型链prototype介绍
Dec 30 Javascript
终于实现了!精彩的jquery弹幕效果
Jul 18 Javascript
JavaScript实现类似拉勾网的鼠标移入移出效果
Oct 27 Javascript
微信小程序 实战实例开发流程详细介绍
Jan 05 Javascript
详解使用angular-cli发布i18n多国语言Angular应用
May 20 Javascript
Bootstrap模态框插入视频的实现代码
Jun 25 Javascript
JS中type=&quot;button&quot;和type=&quot;submit&quot;的区别
Jul 04 Javascript
详解如何构建Promise队列实现异步函数顺序执行
Oct 23 Javascript
jQuery表单选择器用法详解
Aug 22 jQuery
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
社区(php&amp;&amp;mysql)六
2006/10/09 PHP
PHP新手上路(三)
2006/10/09 PHP
PHP如何编写易读的代码
2007/07/10 PHP
PHP6连接SQLServer2005的三部曲
2016/04/15 PHP
PHP重定向与伪静态区别
2017/02/19 PHP
php中访问修饰符的知识点总结
2019/01/27 PHP
PHP+MySQL实现在线测试答题实例
2020/01/02 PHP
javascript的数据类型、字面量、变量介绍
2012/05/23 Javascript
setInterval,setTimeout与jquery混用的问题
2013/04/08 Javascript
Jquery 实现checkbox全选方法
2015/01/28 Javascript
纯JS代码实现气泡效果
2016/05/04 Javascript
js中遍历Map对象的简单实例
2016/08/08 Javascript
基于JavaScript实现购物网站商品放大镜效果
2016/09/06 Javascript
js与jquery分别实现tab标签页功能的方法
2016/11/18 Javascript
详解jQuery uploadify文件上传插件的使用方法
2016/12/16 Javascript
jquery单击文字或图片内容放大并居中显示
2017/06/23 jQuery
JavaScript 判断对象中是否有某属性的常用方法
2018/06/14 Javascript
jQuery实现图片下载代码
2019/07/18 jQuery
Element MessageBox弹框的具体使用
2020/07/27 Javascript
Python导入txt数据到mysql的方法
2015/04/08 Python
Python实现配置文件备份的方法
2015/07/30 Python
Python入门_浅谈逻辑判断与运算符
2017/05/16 Python
Python tkinter事件高级用法实例
2018/01/31 Python
Window 64位下python3.6.2环境搭建图文教程
2018/09/19 Python
python矩阵/字典实现最短路径算法
2019/01/17 Python
Python 多维List创建的问题小结
2019/01/18 Python
python Pandas库基础分析之时间序列的处理详解
2019/07/13 Python
巧用 CSS3的webkit-box-reflect 倒影实现各类动效
2021/03/05 HTML / CSS
html5视频播放_动力节点Java学院整理
2017/07/13 HTML / CSS
伦敦一家西班牙童装精品店:La Coqueta
2018/02/02 全球购物
卫生安全检查制度
2014/02/04 职场文书
道路交通事故人身损害赔偿协议书
2014/11/19 职场文书
社会实践活动总结
2015/02/05 职场文书
感谢师恩主题班会
2015/08/17 职场文书
JS实现简单控制视频播放倍速的实例代码
2021/04/18 Javascript
JavaScript实现简单拖拽效果
2021/09/15 Javascript