해결 방법 :jQuery : 부모 링크에서만 preventDefault
해결책을 찾았습니다.
중고 인 parentNode : 그러나이 모든 비활성화
$('.parent').click(function(e) {
e.preventDefault();
});
을 : 나는 jQuery를에 다음과 같은 시도
<ul>
<li class="parent">
<a href="url">Link title parent</a>
<ul>
<li><a href="url">Link title child</a></li>
</ul>
</li>
</ul>
:
$('.skaftetopmenu-li > a').click(function(e) {
e.preventDefault();
var subid = $(this.parentNode).attr('id');
if (subid !="forsidemenu"){
var str = $('#submenu-content-'+subid).html();
if ($.trim(str) == ""){
$('.submenu-content', this.parentNode).load('http://' + skafte.base_url + '/inc/top-menu-subs/'+subid+'_submenu.html');
}
}
});
나는이 같은 메뉴가 있습니다 전체 메뉴 구조체의 요소 이자형. 상위 링크 만 비활성화하고 싶습니다. "ul li"에있는 링크가 아니라 "ul ul li"에있는 링크가 아닌데, 어떻게 검색했는지 검색 할 수 없습니다. 그래서 제발 도와주세요!
편집 : 답변 해 주셔서 감사합니다. 나는 문제의 코드를 단순화 할 것이라고 생각했지만 사실은 그다지 나를 보상하지 못했다. 그래서를 heres 내가 사용하고 실제 코드 :
$('.skaftetopmenu-li').click(function(e) {
var subid = $(this).attr('id');
if (subid !="forsidemenu"){
var str = $('#submenu-content-'+subid).html();
if ($.trim(str) == ""){
$('.submenu-content', this).load('http://' + skafte.base_url + '/inc/top-menu-subs/'+subid+'_submenu.html');
}
}
});
그리고 HTML :
<li class="skaftetopmenu-li" id="priser">
<a href="http://<?php echo DOMAIN?>/priser.php">Priser & Sortiment</a>
<div class="submenu-content" id="submenu-content-priser"></div>
</li>
난 당신이 제안으로 수행하고로 설정하려고하면 :
$('.skaftetopmenu-li > a').click(function(e) {
e.preventDefault();
그것은 아무튼 작동하지 않습니다.
를 가리 키도록 선택을 변경하십시오 오스틴 멀린스 '대답 유사 –
$ ('. 부모 a')를 사용해 보셨습니까? (function (e) { e.preventDefault(); }); – Sven