2011-08-05 3 views
0

이 같은이라고인 stopPropagation는 온 클릭 중첩 된 목록에서 작동하지

function bimageswap (step) { 
    step.stopPropagation; 
    realstep = parseInt(step) + 1; 
    nextsteps = realstep + 1; 
    for (iss = nextsteps;iss <= 5; iss++) { 
     document.getElementById("step" + iss).className = 'step' + iss; 
     alert(iss); 
    } 
    document.getElementById("step" + realstep).className = 'step' + realstep + 'a'; 
/*$("#step2").css('background-image', 'images/adtl_prodimg/discs/step1_.png');*/ 
    return false; 
} 

.. 내가 중첩 된 목록에서 상향 링크의 클릭에 이미지를 교체하기 위해 다음과 같은 기능을 가지고 있지만 목록을 버블 링 중지 나던 이 :

내가 다른 답변에서 발견 한 것이기 때문에 반환을 시도했지만 아직 작동하지 않습니다. 어떤 도움을 주셔서 감사합니다!

+0

step.stopPropagation; - 함수 이름 다음에 또는 코드에서만 빠진 적이 있습니까? –

답변

1

stopPropagation 메서드는 event 개체에 있으므로 문자열에서 호출 할 수 없습니다. 또한 괄호가 누락되어 있으므로 문자열 (undefined을 반환)에서 stopPropagation 속성을 가져 와서 버립니다.

<ul onclick="bimageswap(event, '4');"> 

함수에서 이벤트 객체를 사용 :

은 함수에 이벤트 핸들러에서 이벤트 객체를 보내기

function bimageswap(event, step) { 
    event.stopPropagation(); 
    ... 
+0

아름답게 일해 주셔서 대단히 감사합니다. – Kyle