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数据显示插件整合实现代码
Oct 24 Javascript
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
Oct 11 Javascript
jQuery 1.9使用$.support替代$.browser的使用方法
May 27 Javascript
js生成的验证码的实现与技术分析
Sep 17 Javascript
jQuery实现列表内容的动态载入特效
Aug 08 Javascript
javascript用正则表达式过滤空格的实现代码
Jun 14 Javascript
JavaScript中Promise的使用详解
Feb 26 Javascript
使用ajax的post同步执行(实现方法)
Dec 21 Javascript
vue轮播图插件vue-concise-slider的使用
Mar 13 Javascript
微信小程序签到功能
Oct 31 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
Jun 26 Javascript
Ant Design的Table组件去除
Oct 24 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
Mysql和网页显示乱码解决方法集锦
2008/03/27 PHP
php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
2014/06/10 PHP
php实现的mongodb操作类
2015/05/28 PHP
PHP文件缓存类实现代码
2015/10/26 PHP
值得分享的php+ajax实时聊天室
2016/07/20 PHP
PHP在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
2016/10/14 PHP
ThinkPHP5框架中使用JWT的方法示例
2020/06/03 PHP
JavaScript 仿关机效果的图片层
2008/12/26 Javascript
jQuery实现的立体文字渐变效果
2010/05/17 Javascript
js过滤HTML标签完整实例
2015/11/26 Javascript
你不知道的高性能JAVASCRIPT
2016/01/18 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
javascript 数组去重复(在线去重工具)
2016/12/17 Javascript
js仿搜狐视频记录片列表展示效果
2020/05/30 Javascript
详解Angualr 组件间通信
2017/01/21 Javascript
jQuery实现文章图片弹出放大效果
2017/04/06 jQuery
ES6正则表达式的一些新功能总结
2017/05/09 Javascript
JS仿QQ好友列表展开、收缩功能(第二篇)
2017/07/07 Javascript
JavaScript引用类型Function实例详解
2018/08/09 Javascript
简单两步使用node发送qq邮件的方法
2019/03/01 Javascript
小程序封装wx.request请求并创建接口管理文件的实现
2019/04/29 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
vue项目开启Gzip压缩和性能优化操作
2020/10/26 Javascript
利用vue3+ts实现管理后台(增删改查)
2020/10/30 Javascript
python使用ctypes模块调用windowsapi获取系统版本示例
2014/04/17 Python
python中assert用法实例分析
2015/04/30 Python
Python自动化运维_文件内容差异对比分析
2017/12/13 Python
用python编写第一个IDA插件的实例
2018/05/29 Python
python图像处理入门(一)
2019/04/04 Python
Pycharm简单使用教程(入门小结)
2019/07/04 Python
伦敦最著名的老字号百货公司:Selfridges(塞尔福里奇百货)
2016/07/25 全球购物
六十大寿答谢词
2014/01/12 职场文书
设计专业自荐信
2014/06/19 职场文书
2015年学生会部门工作总结
2015/04/21 职场文书
教师见习总结范文
2015/06/23 职场文书
幼儿园春季开学通知
2015/07/16 职场文书