当你编写自己的jquery函数时,这是什么意思?

时间:2011-08-04 03:41:18

标签: javascript jquery

您好我遇到了这段代码,我特别想知道this.each(function(i,e)var $e = $(e);发生了什么。我想知道程序员正在尝试做什么。

谢谢!

$.fn.rssfeed = function (url, options, fn) {
    return this.each(function (i, e) {
            var $e = $(e);
            var s = '';
}

3 个答案:

答案 0 :(得分:6)

i.each循环的当前迭代元素的索引。 e是实际的DOM元素。

var $e = $(e);

$e变量赋予jQuery对象中包含的当前DOM元素,以便利用jQuery的规范化DOM方法。

插件通常应用于与特定选择器匹配的所有元素,因此:

$("div").rssfeed(url, options, fn);

会导致插件迭代.each循环中的所有div元素。

答案 1 :(得分:1)

$.fn.rssfeed = function (url, options, fn) {

    //Here this refers to the jquery object
    //i refers to the index in the loop
    //e refers to the dom element os $(e) will give the jquery object corresponding to the dom element
    return this.each(function (i, e) {
            var $e = $(e);
            var s = '';
}

答案 2 :(得分:0)

每个(函数(i,e))就像

一样
for(var i = 0; i < this.length; i++){
   var $e = $(this[i]);
}

实际上,e可能是一个dom元素,$(e)只是用户jquery使它成为一个对象($ e);