2013-03-20 2 views
0

나는 jQuery를 사용하는 clojurescript에 있지만 cljs와 js에 대한 대답은 같아야한다고 생각한다.jQuery에서 필요한 경우 부모 앵커에 이벤트를 전달하는 방법은 무엇입니까?

나는 앵커 요소를 생성하고 내부에 아이콘 요소를 넣는 도우미 함수를 가지고있다. 내 앵커에는 버튼 유형에 대한 고유 한 클래스가 있습니다.

내가 않는 경우

$ 같은 ('내-형 btn을.')을 클릭 (함수 (전자) {을 console.log (e.target)}).;

  • 만 인쇄 앵커는

나는 끊임없이 아이콘이 래핑 된 문제가를 클릭하면 아이콘이 (핸들러가 부모의 경우에도)

  • 인쇄를 클릭 한 경우 앵커는 이벤트 대상이며 핸들러가 연결된 앵커는 아닙니다. 내 처리기 함수에 필요한 내 앵커 요소에서 데이터 특성을 사용하고 있습니다. 이렇게하면 event.target이 아이콘인지 앵커인지 수동으로 확인한 다음 수동으로 이벤트를 포착하거나 앞으로 이동해야합니다.

    이것은 잘 보이지 않고 고통입니다. jQuery, js 또는 clojurescript에 핸들러를 첨부하는 간단한 방법이 있어야합니다. 핸들러가 바인딩 된 요소 만 호출합니다. 어떻게해야합니까?

    편집 : "이"내가 필요로 무엇을했지만 clojurescript에서이-으로 매크로가 필요 사용

    . 이 스레드는 예제가 있습니다 enter link description here

  • +3

    'this' 항상 당신이 이벤트를 바인딩 요소를 참조합니다. –

    +0

    문제는 아이콘을 클릭하면 이벤트가 시작되는 것입니까? – yoshi

    +0

    나는 그게 사실인지 몰랐다. 그것은 알아두면 좋아. 불행하게도 나는 클로저 스크립트에서 "this"객체에 접근 할 수 없었다. "this"를 사용하는 것이 내가 원하는 것을하는 관용적 인 방법 일 경우 다른 스레드를 보증 할 수 있습니다. –

    답변

    0

    나는 그것이 당신이 앵커와 아이콘 둘 다에 대한 클릭 이벤트를 연결하고있는 것처럼 보인다고 이해한다면 올바르게 보입니다.

    또는 앵커와 아이콘의 클래스 이름이 같습니다.

    예컨대 :

    <a href="#" class="my-btn-type" > 
        <img src="../img/icon.png" class="my-btn-type" /> 
    </a> 
    
    +0

    나는 액세스 할 필요가있는 데이터 속성과 함께 앵커에 "my-btn-type"을 가지고 있습니다. 아이콘을 클릭하면 앵커 내부에서 이벤트가 계속 발생하지만 $ (e.target) .data ("my-data")와 같은 함수의 결과에는 아이콘이 없기 때문에 분명히 올바르게 수행되지 않습니다. 앵커가 수행하는 데이터 속성 나는 과거에 한 두 가지 요소에 모든 데이터 속성을 추가하고 싶지 않습니다. –

    +0

    좀 더 코드를 게시하여 좀 더 좋은 아이디어를 가질 수 있습니까? – DanielDMO

    관련 문제