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 相关文章推荐
IE6下JS动态设置图片src地址问题
Jan 08 Javascript
js实现登录验证码
Dec 22 Javascript
JS实现中国公民身份证号码有效性验证
Feb 20 Javascript
深入理解vue $refs的基本用法
Jul 13 Javascript
静态页面实现 include 引入公用代码的示例
Sep 25 Javascript
Vue2.0 slot分发内容与props验证的方法
Dec 12 Javascript
Vue项目分环境打包的实现步骤
Apr 02 Javascript
vue中tab选项卡的实现思路
Nov 25 Javascript
JavaScript对象属性操作实例解析
Feb 04 Javascript
js Math数学简单使用操作示例
Mar 13 Javascript
JavaScript 如何计算文本的行数的实现
Sep 14 Javascript
vue 中 get / delete 传递数组参数方法
Mar 23 Vue.js
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实现像JSP,ASP里Application那样的全局变量
2007/01/12 PHP
PHP数据类型之整数类型、浮点数的介绍
2013/04/28 PHP
深入讲解PHP的对象注入(Object Injection)
2017/03/01 PHP
php实现文件预览功能
2017/05/23 PHP
php调用云片网接口发送短信的实现方法
2017/10/25 PHP
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
2007/04/29 Javascript
JS面向对象、prototype、call()、apply()
2009/05/14 Javascript
JavaScript使用Max函数返回两个数字中较大数的方法
2015/04/06 Javascript
jQuery获取DOM节点实例分析(2种方式)
2015/12/15 Javascript
基于JS2Image实现圣诞树代码
2015/12/24 Javascript
详解Angular 4.x 动态创建组件
2017/04/25 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
phantomjs导出html到pdf的方法总结
2017/10/19 Javascript
微信小程序picker组件简单用法示例【附demo源码下载】
2017/12/05 Javascript
VUE 实现滚动监听 导航栏置顶的方法
2018/09/11 Javascript
详解三种方式解决vue中v-html元素中标签样式
2018/11/22 Javascript
原生js 实现表单验证功能
2021/02/08 Javascript
使用Python脚本将Bing的每日图片作为桌面的教程
2015/05/04 Python
python中numpy基础学习及进行数组和矢量计算
2017/02/12 Python
flask中过滤器的使用详解
2018/08/01 Python
Python通过yagmail实现发送邮件代码解析
2020/10/27 Python
HTML5 创建canvas元素示例代码
2014/06/04 HTML / CSS
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
澳大利亚家具和家居用品在线:BROSA
2017/11/02 全球购物
鞋子女王塔玛拉·梅隆同名奢侈品牌:Tamara Mellon
2017/11/22 全球购物
全球领先的全景影像品牌:Insta360
2019/08/21 全球购物
描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理
2015/03/25 面试题
会议接待欢迎词
2014/01/12 职场文书
安全协议书范本
2014/04/21 职场文书
残疾人小组计划书
2014/04/27 职场文书
诚信的演讲稿范文
2014/05/12 职场文书
清正廉洁演讲稿
2014/05/22 职场文书
科技工作者先进事迹
2014/08/16 职场文书
小学师德师风整改措施
2014/10/27 职场文书
2016元旦文艺汇演主持词
2015/07/06 职场文书
子女赡养老人协议书
2016/03/23 职场文书