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 相关文章推荐
javascript parseInt 函数分析(转)
Mar 21 Javascript
基于jQuery的消息提示插件 DivAlert之旅(二)
Apr 01 Javascript
jQuery Ajax()方法使用指南
Nov 19 Javascript
Angularjs编写KindEditor,UEidtor,jQuery指令
Jan 28 Javascript
基于jQuery滑动杆实现购买日期选择效果
Sep 15 Javascript
浅谈Sticky组件的改进实现
Mar 22 Javascript
浅谈JS中的bind方法与函数柯里化
Aug 10 Javascript
RequireJS简易绘图程序开发
Oct 28 Javascript
基于JavaScript实现屏幕滚动效果
Jan 18 Javascript
关于Sequelize连接查询时inlude中model和association的区别详解
Feb 27 Javascript
使用vue的transition完成滑动过渡的示例代码
Jun 25 Javascript
jQuery zTree树插件的使用教程
Aug 16 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调用.NET的WebService 简单实例
2015/03/27 PHP
PHP实现将多个文件中的内容合并为新文件的方法示例
2017/06/10 PHP
js玩一玩WSH吧
2007/02/23 Javascript
Ruffy javascript 学习笔记
2009/11/30 Javascript
javascript 嵌套的函数(作用域链)
2010/03/15 Javascript
鼠标事件延时切换插件
2011/03/12 Javascript
javascript代码编写需要注意的7个小细节小结
2011/09/21 Javascript
JS弹出层的显示与隐藏示例代码
2013/12/27 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
JS组件Bootstrap实现弹出框效果代码
2016/04/26 Javascript
JavaScript数组的定义及数字操作技巧
2016/06/06 Javascript
微信小程序 swiper制作tab切换实现附源码
2017/01/21 Javascript
JS随机数产生代码分享
2018/02/24 Javascript
微信小程序实现全局搜索代码高亮的示例
2018/03/30 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
2018/08/08 jQuery
JavaScript JMap类定义与使用方法示例
2019/01/22 Javascript
mongodb初始化并使用node.js实现mongodb操作封装方法
2019/04/02 Javascript
[06:01]刀塔次级联赛top10第一期
2014/11/07 DOTA
Python这样操作能存储100多万行的xlsx文件
2019/04/16 Python
python 批量解压压缩文件的实例代码
2019/06/27 Python
使用Python实现将多表分批次从数据库导出到Excel
2020/05/15 Python
简单了解Django项目应用创建过程
2020/07/06 Python
python实现简单遗传算法
2020/09/18 Python
【HTML5】Canvas绘制简单图片教程
2016/05/13 HTML / CSS
mysql有关权限的表都有哪几个
2015/04/22 面试题
《梅兰芳学艺》教学反思
2014/02/24 职场文书
银行内勤岗位职责
2014/04/09 职场文书
2014年财政所工作总结
2014/11/22 职场文书
聋哑人盗窃罪辩护词
2015/05/21 职场文书
少年雷锋观后感
2015/06/10 职场文书
医疗纠纷调解协议书
2015/08/06 职场文书
个人销售励志奋斗口号
2019/12/05 职场文书
七年级作文之下雨天
2019/12/23 职场文书
nginx优化的六点方法
2021/03/31 Servers
pygame面向对象的飞行小鸟实现(Flappy bird)
2021/04/01 Python
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis