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 相关文章推荐
MooTools 页面滚动浮动层智能定位实现代码
Aug 23 Javascript
js怎么终止程序return不行换jfslk
May 30 Javascript
js和jquery设置disabled属性为true使按钮失效
Aug 07 Javascript
js字符串完全替换函数分享
Dec 03 Javascript
JavaScript的Backbone.js框架入门学习指引
May 07 Javascript
jquery获取点击控件的绝对位置简单实例
Oct 13 Javascript
echarts学习笔记之图表自适应问题详解
Nov 22 Javascript
解决iview打包时UglifyJs报错的问题
Mar 07 Javascript
webpack+vue-cil中proxyTable处理跨域的方法
Jul 20 Javascript
在vue项目中优雅的使用SVG的方法实例详解
Dec 03 Javascript
jQuery表单校验插件validator使用方法详解
Feb 18 jQuery
vue 根据选择的月份动态展示日期对应的星期几
Feb 06 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(视频)Http下载
2006/12/12 PHP
php桌面中心(三) 修改数据库
2007/03/11 PHP
PHP生成静态HTML文档实现代码
2016/06/23 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
2017/02/28 PHP
PHP7原生MySQL数据库操作实现代码
2020/07/03 PHP
基于PHP+mysql实现新闻发布系统的开发
2020/08/06 PHP
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
基于jsTree的无限级树JSON数据的转换代码
2010/07/27 Javascript
javascript学习笔记(一) 在html中使用javascript
2012/06/18 Javascript
js与applet相互调用的方法
2016/06/22 Javascript
angular仿支付宝密码框输入效果
2017/03/25 Javascript
bootstrap Table的一些小操作
2017/11/01 Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
2018/08/17 Javascript
JavaScript数据结构与算法之检索算法示例【二分查找法、计算重复次数】
2019/02/22 Javascript
Nodejs文件上传、监听上传进度的代码
2020/03/27 NodeJs
Javascript柯里化实现原理及作用解析
2020/10/22 Javascript
详解Vue.js 可拖放文本框组件的使用
2021/03/03 Vue.js
跟老齐学Python之类的细节
2014/10/13 Python
Python批量按比例缩小图片脚本分享
2015/05/21 Python
Python 实现文件打包、上传与校验的方法
2019/02/13 Python
实例讲解Python3中abs()函数
2019/02/19 Python
Django 全局的static和templates的使用详解
2019/07/19 Python
Python爬取爱奇艺电影信息代码实例
2019/11/26 Python
python yield和Generator函数用法详解
2020/02/10 Python
Python通过正则库爬取淘宝商品信息代码实例
2020/03/02 Python
使用Django xadmin 实现修改时间选择器为不可输入状态
2020/03/30 Python
python实现图像外边界跟踪操作
2020/07/13 Python
html5中audio支持音频格式的解决方法
2018/08/24 HTML / CSS
柏林通行证:Berlin Pass
2018/04/11 全球购物
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
豪华复古化妆:Besame Cosmetics
2019/09/06 全球购物
静态成员和非静态成员的区别
2012/05/12 面试题
办公室文秘岗位职责
2013/11/15 职场文书
2014社区三八妇女节活动方案
2014/03/30 职场文书
管理建议书范文
2014/05/13 职场文书
大学奖学金获奖感言
2014/08/15 职场文书