2012-02-14 6 views
0
function addValidEvent(item,event,func) 
{ 
    if (item.addEventListener) 
    { 
     item.addEventListener(event, func, false);   
    } 
    else 
    if (item.attachEvent) 
    { 
     item.attachEvent("on" + event, func); 
    } else { 
     //todo 
    } 
} 

내가자바 스크립트 기능이

addValidEvent(element, "mouseover", inRadio(element)); 

과 같이 호출, 나는 addValidEvent 통화에서 inRadio 전화를 밖으로이 등록해야합니다.

param과 같은 기능을 전달하는 방법을 수정 하시겠습니까?

+0

가능한 중복 : //stackoverflow.com/questions/2571655/javascript-parameter-passing-in-dynamic-action-handler) –

답변

3

컨텍스트처럼 수행은 요소 자체입니다, 그래서 당신은 이벤트 핸들러와 함수 참조 (이름)를 전달할 수 :

addValidEvent(element, "mouseover", inRadio); 

하거나 포장 할 수 있습니다 익명 함수에서 함수 호출 (당신이 콜백보다 효율적으로 제어 할 할 때이 유용하게 사용할 수 있음) : 코드에서

addValidEvent(element, "mouseover", function(){inRadio(element);}); 
4

을 함수로 전달하십시오. 이제 inRadio 메서드를 호출합니다. 함수가 호출되는이

addValidEvent(element, "mouseover", function() {inRadio(element); }); 
2

당신은 실제로 기능 및 반환 V를 호출 그 전화의 alue는 addValidEvent 방법에 thrid argumnent로 통과되고있다.

시도해보십시오. 보조 노트로

addValidEvent(element, "mouseover", inRadio); 

: jQuery를이 질문에 태그 때문에 난 당신이 너무 간단하다이를 위해 jQuery를 사용하는 것이 좋습니다 것입니다.

$(element).mouseover(inRadio); 
-1
var a = function() { 
    // code here 
} 

그럼 당신은 'A'

와에 무엇을해야하지만 이전의 답변을 :) 선호

[자바 스크립트 매개 변수 역동적 인 액션 핸들러에 전달 (HTTP의
+0

이 정보가 도움이 되셨습니까? 나는 그 질문에 대한 관계를 보지 못한다. –

+0

나는 이것이 다소 불완전한 예라고 말하고 싶다. 'a'가 기존 코드와 어떻게 통합되는지는 명확하지 않습니다. –

+0

나는 그것을 말하지 않았다;) 어쨌든, 나는 문제를 이해하고, 나는 단지 당신이 당신의 대답을 향상 시키길 원한다. 당신이 보여주는 것은 OP를 이미 알고 있다고 가정하는 함수를 만드는 것입니다. –

관련 문제