2011-08-04 2 views
2

안녕하세요. 저는이 코드 조각을 보았고 구체적으로 무엇이 진행되고 있는지 궁금해서 this.each(function(i,e)var $e = $(e);으로 궁금합니다. 프로그래머가 무엇을하려고하는지 알고 싶습니다.jquery 함수를 작성할 때이 의미는 무엇입니까?

감사합니다.

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

답변

6

i.each 루프의 현재 반복 요소의 인덱스이다. e은 실제 DOM 요소입니다.

var $e = $(e); 

$e 변수를 정상화 jQuery의 DOM 방법을 이용하기 위해서는 오브젝트의 jQuery 래핑 현재 DOM 요소를 할당한다.

플러그인은 일반적으로 너무 특정 선택 일치하는 모든 요소에 적용 얻을 :

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

.each 루프 내의 모든 DIV 요소를 반복하는 플러그인으로 이어질 것입니다.

+2

추가 정보 : 필요한 경우 개체를 다시 설치하는 대신 처리 비용을 줄이는 것이 좋습니다. – Jules

+0

미안하지만 여전히 조금 불분명합니다. '$ e'가 DOM 요소를 참조합니까? – locoboy

+0

아니요, $ e는 jQuery 객체에서'e'를 래핑 한 결과를 할당받습니다. 'e'는 단순한 DOM 엘리먼트입니다. – karim79

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 = ''; 
} 
0

각 (함수 (I, E)) 바로

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

전자 어쩌면 DOM 요소와 $ (E) 등은 객체 ($ 전자 수 있도록 단지 사용자 JQuery와 인);

관련 문제