링크에 툴팁을 표시하는 데 cluetips 플러그인을 사용하고 있습니다. 도구 팁에는 텍스트와 링크가 있습니다. 링크 (클래스 'show-panel')를 클릭하면 라이트 박스 유형 div가 맨 위에 열립니다. 그러나 click 이벤트는 JQuery UI 위젯을 사용하는 툴팁 내의 링크에 바인딩되지 않는 것처럼 보입니다. 라이트 박스 스크립트는 툴팁 상자 외부의 링크에서 작동하기 때문에 작동한다는 것을 알고 있습니다. JQuery UI가 그 일을 한 후에 HTML을 보겠습니다. 여기 JQuery UI 위젯 내에서 클릭 이벤트를 캡처 할 수 없습니다.
<div id="cluetip" class="cluetip ui-widget ui-widget-content ui-cluetip clue-top-sequoia cluetip-sequoia" style="position: absolute; width: 275px; left: 126.5px; z-index: 97; top: 124px; box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.5); display: block;">
<div class="cluetip-outer" style="position: relative; z-index: 97; overflow: visible; height: auto;">
<h3 class="cluetip-title ui-widget-header ui-cluetip-header">Sed ut perspiciatis unde omnis</h3>
<div class="cluetip-inner ui-widget-content ui-cluetip-content">
<div class="cluetip-close">
iste natus error
<a class="show-panel" rel="detailpage" href="http://www.my.link/">sit voluptatem</a>
accusantium doloremque laudantium, sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.
</div>
</div>
<div class="cluetip-extra"></div>
<div class="cluetip-arrows ui-state-default" style="z-index: 98; display: block;"></div>
</div>
은 JQuery와입니다 : 내가 추측하고있어
$("a.show-panel").click(function(e){
//alert("works");
$("#lightbox, #lightbox-panel").fadeIn(300);
e.preventDefault();
})
$("a#close-panel").click(function(e){
$("#lightbox, #lightbox-panel").fadeOut(300);
e.preventDefault();
})
은 범위 문제의 일종이다하지만 난 링크에 액세스하는 방법을 모르겠어요.
모든 의견을 환영합니다.
이 경우에는 'delegate'을 사용해야합니다 - http://api.jquery.com/delegate/ –
정말 고마워요, 완벽하게 작동합니다! 이 질문을 답으로 쓰지 않으면 답변으로 선택하여 담당자를 얻을 수 있습니다. – shadylane
당신은 환영합니다 :) –