2014-05-12 9 views
0

을 나는 것처럼. 아래의 매개 변수를 사용하는 코드 정의(이벤트 '클릭'?

$(document).on('click', firstRow, processEvent(firstRow, rowArray)); 

다음 한 현재 변수에 저장된 함수 정의가 아닌 processEvent 함수를 전달하고 있으므로 함수가 즉시 호출됩니다.

클릭 핸들러를 동적으로 설정하고 필자의 기능이 제대로 작동하기를 원합니다. 클릭 이벤트에서 콜백에 두 개의 매개 변수를 전달할 수 있어야합니다. 첫 번째는 클릭 한 DOM 요소에 대한 참조입니다. 두 번째는 DOM 요소 인 indentifier (문자열로 저장 됨)의 배열입니다.

내가 ('클릭'이벤트 내 jQuery를 (문서) CSTE 연구진의 콜백에 여러 인수 함수 참조를 전달할 수있는 방법

?

var firstRow = '.first-row'; 
    var secondRow = '.second-row'; 
    var thirdRow = '.third-row'; 

    var rowArray = [firstRow, secondRow, thirdRow]; 


    var hideRow = function(input){ 
     var Input = input; 
     $(Input).show(); 
    }; 
    var showRow = function(input){ 
     var Input = input; 
     $(Input).hide(); 
    } 
    // alert(rowArray); 


    //Hide second and third rows 
    $('.second-row, .third-row').hide(); 

    var processEvent = function(e, fooArray){ // currently set to one 
     var E = e; // Cache ID of calling object 
     var a = fooArray; 
     // alert(E); 
     // alert(a); 
     var arrayLength = a.length; 
     for (var i = 0; i < arrayLength; i++) { 
      foo = a[i]; 
      // alert(row); // 
      alert(foo); 
      if (foo = e){ 
       showRow(e); 
      } 
      else { 
       hideRow(foo); 
      } 
     } 
    } // function testProcessEvent(){ processEvent(); } 

    $(document).on('click', firstRow, processEvent(firstRow, rowArray)); 

이것은 내 첫 번째 시도 $ (문서) CSTE 연구진(), FIRSTROW, 된 SomeFuncion (FIRSTROW를 '클릭');

답변

0

사용

$(document).on('click', firstRow, function() { 
    //place the code here 
    processEvent(firstRow, rowArray); 
}); 
에게