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 相关文章推荐
bgsound 背景音乐 的一些常用方法及特殊用法小结
May 11 Javascript
formValidator3.3的ajaxValidator一些异常分析
Jul 12 Javascript
JavaScript子窗口ModalDialog中操作父窗口对像
Dec 11 Javascript
基于pthread_create,readlink,getpid等函数的学习与总结
Jul 17 Javascript
jQuery实现tab选项卡效果的方法
Jul 08 Javascript
谈谈Jquery中的children find 的区别有哪些
Oct 19 Javascript
jQuery 3.0 的变化及使用方法
Feb 01 Javascript
AngularJS国际化详解及示例代码
Aug 18 Javascript
AngularJS动态绑定HTML的方法分析
Nov 07 Javascript
Vue filters过滤器的使用方法
Jul 14 Javascript
JS轮播图实现简单代码
Feb 19 Javascript
小程序实现筛子抽奖
May 26 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
人族 TERRAN 概述
2020/03/14 星际争霸
10条PHP编程习惯助你找工作
2008/09/29 PHP
php写的简易聊天室代码
2011/06/04 PHP
thinkPHP删除前弹出确认框的简单实现方法
2016/05/16 PHP
php表单处理操作
2017/11/16 PHP
PHP中的自动加载操作实现方法详解
2019/08/06 PHP
HTML页面如何象ASP一样接受参数
2007/02/07 Javascript
javascript中全局对象的parseInt()方法使用介绍
2013/12/19 Javascript
javascript定时器完整实例
2015/02/10 Javascript
详解jQuery中的empty、remove和detach
2016/04/11 Javascript
Angular4如何自定义首屏的加载动画详解
2017/07/26 Javascript
vuex 使用文档小结篇
2018/01/11 Javascript
详解Angular系列之变化检测(Change Detection)
2018/02/26 Javascript
手写Node静态资源服务器的实现方法
2018/03/20 Javascript
JavaScript 2018 中即将迎来的新功能
2018/09/21 Javascript
vue中v-for循环给标签属性赋值的方法
2018/10/18 Javascript
[jQuery] 事件和动画详解
2019/03/05 jQuery
jQuery实现动态添加和删除input框实例代码
2019/03/26 jQuery
你准备好迎接vue3.0了吗
2020/04/28 Javascript
简单的Python2.7编程初学经验总结
2015/04/01 Python
使用Python的PIL模块来进行图片对比
2016/02/18 Python
详解pandas如何去掉、过滤数据集中的某些值或者某些行?
2019/05/15 Python
Aerosoles爱柔仕官网:美国舒软女鞋品牌
2017/07/17 全球购物
幼师自荐信
2013/10/26 职场文书
幼儿如何来做好自我评价
2013/11/05 职场文书
奥巴马演讲稿
2014/01/08 职场文书
大二学期个人自我评价
2014/01/13 职场文书
七年级地理教学反思
2014/01/26 职场文书
葬礼司仪主持词
2014/03/31 职场文书
给学校建议书范文
2014/05/13 职场文书
日语专业求职信
2014/07/04 职场文书
立志成才演讲稿
2014/09/04 职场文书
学校政风行风评议工作总结
2014/10/21 职场文书
四风问题自查自纠工作情况报告
2014/10/28 职场文书
《梅花魂》教学反思
2016/02/18 职场文书
详解JavaScript的计时器和按钮效果设置
2022/02/18 Javascript