Jquery 对象集合的迭代扩展forEach

 1 if (jQuery && !jQuery.fn.forEach) {
 2     $(function () {
 3         (function ($) {
 4             $.fn.extend({
 5                 forEach: function (predicate) {
 6
 7                     if (this == null) {
 8                         throw new TypeError(‘ this is null or not defined‘);
 9                     }
10
11                     // 1. Let O be the result of calling toObject() passing the
12                     // |this| value as the argument.
13                     var O = Object(this);
14
15                     // 2. If isCallable(predicate) is false, throw a TypeError exception.
16                     if (typeof predicate !== "function") {
17                         throw new TypeError(predicate + ‘ is not a function‘);
18                     }
19
20                     //3 call the jq  original API  for iteror
21                     $.each(O, function (index, domEle) {
22                         predicate($(domEle));
23                     });
24                 }
25             })
26         })(jQuery);
27
28     });
29 }
时间: 2024-12-26 07:22:40

Jquery 对象集合的迭代扩展forEach的相关文章

给jquery对象添加自定义方法和扩展jquery类

http://blog.sina.com.cn/s/blog_944b24ef0101epr5.html 一.给jQuery对象添加自定义方法   方法一.$.fn.xxx 方法二.jQuery.fn.extend({ xxx:function(){ alert($(this).val()); } });       方法一示例: $.fn.setCursorPosition = function(position){            if(this.lengh == 0) return

JQuery对象操作支持链式法则源码分析

JQuery链式法则 何为链式法则?先给出非链式写法的例子 //非链式写法 $("div").css("width", 45px); $("div").css("height", 45px); 再给出链式写法的例子 //链式写法 $("div").css("width", 45px).css("height", 45px); JQuery实现元素的定位与操作,如果每一

jquery对象和javascript的dom对象转换

Jquery框架为jquery对象定义了独立使用的方法和属性,它无法直接调用dom对象的方法,dom对象也无法直接调用jquery对象的方法和属性. Jquery对象和dom对象是可以相互转换的,因为他们所操作的对象都是dom元素,只不过jquery对象包含了多个dom元素,而dom对象本身就是一个dom元素,简单地说,jquery对象是dom元素的数组,称为类数组,而dom对象就是单个的dom元素. 1.把jquery对象转换成dom对象 (1)借助数组下标来读取jquery对象集合中的某个d

前端学习——选择结果为JQuery对象还是DOM对象?

0.前言 在学习和使用javascript过程中经常使用JQuery的选择器,但是在获取到选择结果之后经常"犯迷糊",需要一个DOM对象时或者一个JQuery对象,这样的尴尬经常遇到.为了让自己不再迷糊通过博文总结经验教训,希望自己在总结过程中缓慢提高. [相关博文] [前端学习--如何修改<a href="#">url name</a> 使用javascript和JQuery] [示例页面]--test-ul.html <!DOCTY

C#高级知识点概要(3) - 特性、自动属性、对象集合初始化器、扩展方法、Lambda表达式和Linq查询

1.特性(Attributes) 特性(Attributes),MSDN的定义是:公共语言运行时允许你添加类似关键字的描述声明,叫做attributes, 它对程序中的元素进行标注,如类型.字段.方法和属性等.Attributes和Microsoft .NET Framework文件的元数据保存在一起,可以用来向运行时描述你的代码,或者在程序运行的时候影响应用程序的行为.例如,在一个方法前标注[Obsolete]特性,则调用该方法时VS则会提示该方法已过期的警告,如下图: 又如,在.Net Re

[ jquery 过滤器 is(expr | jqObj | ele | function) ] 此方法用于在选择器的基础之上根据选择器、DOM元素或 jQuery 对象来检测匹配元素集合,如果有,则返回true

根据选择器.DOM元素或 jQuery 对象来检测匹配元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true. 如果没有元素符合,或者表达式无效,都返回'false'. '''注意:'''在jQuery 1.3中才对所有表达式提供了支持.在先前版本中,如果提供了复杂的表达式,比如层级选择器(比如 + , ~ 和 > ),始终会返回true 实例: <!DOCTYPE html> <html lang='zh-cn'> <head> <title&

为Jquery类和Jquery对象扩展方法

jquery.fn.extend与jquery.extend jQuery为开发插件提拱了两个方法,分别是: JavaScript代码 jQuery.fn.extend(object); jQuery.extend(object); jQuery.extend(object); 为扩展jQuery类本身.为类添加新的方法. jQuery.fn.extend(object);给jQuery对象添加方法. fn 是什么东西呢.查看jQuery代码,就不难发现. JavaScript代码 jQuery

使用jQuery匹配文档中所有的li元素,返回一个jQuery对象,然后通过数组下标的方式读取jQuery集合中第1个DOM元素,此时返回的是DOM对象,然后调用DOM属性innerHTML,读取该元素 包含的文本信息

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head> <meta htt

#WEB安全基础 : HTTP协议 | 0x12 MIME多用途邮件扩展以及多部分对象集合

我们是怎么让邮件里又有图片又有文字的? 文字和图片是两个不同的类型,而邮件又是一个类型. C语言的结构体允许用户定义一个含有多类型的自定义类型 像这样,看不懂没关系,你只要知道邮件里有多个类型就可以了  typedef struct myType = { int num; char words[20]; }; 那么在HTTP传输里有什么机制支持邮件可以使用多种类型呢? 猜对了,就是MIME(多用途邮件扩展) 在MIME中会使用多部分对象集合的方法来容纳不同的数据 相应地,HTTP协议也采用了多部