"링크"를 두 번 클릭하면 페이지로 리다이렉트되지만, 메뉴를 드롭 다운 또는 올라가서 클릭 할 때마다, CSS 코드jQuery를 사용하여 "a : active"라는 클래스를 토글 할 때의 문제
a:active span {
color:#bdbcae;
}
이 적용됩니다. 내가 뭘 하려는지는 링크를 두 번 클릭하면 색이 바뀌어 페이지로 리다이렉트되도록하는 것입니다. 한 번만 클릭하면 메뉴 만 드랍됩니다. 링크를 기본 색상으로 유지하고 싶습니다.
이
내가보고 있었다 그 아래에있는 내 기능의 코드가이if ($(this).data('clicks')==2){
$(this).data('clicks', 0);
window.open("accomplishments.html");
}
내가 if 문이 내
$(this).addClass("active")
의 라인을 따라 뭔가를 추가하는 생각
을 달성하는 것입니다하지만 작동하지 않습니다 - 그리고 이 경우가 아니라면 언제든지 $(this).removeClass("active")
을 만들지 만이 중 아무 것도 작동하지 않습니다. 아래 내 전체 코드를 참조하십시오.
HTML :
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<button class="navbar-toggle" data-toggle="collapse" data-target=".navHeaderCollapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div class="collapse navbar-collapse navHeaderCollapse">
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="page.html" class="dropdown-toggle" data-toggle="dropdown"><span>Link</span><b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
</ul><!-- END: "dropdown-menu" -->
</li><!-- END: "dropdown" -->
</ul><!-- END: "collapse navbar-collapse navHeaderCollapse" -->
</div><!-- END: "container" -->
</div><!-- END: "container" -->
</div><!-- END: "navbar navbar-inverse navbar-fixed-top" -->
CSS :
a span {
color:#ffffff;
}
a:hover *.caret {
color:#bdbcae;
}
a:active span {
color:#bdbcae;
}
a:active *.caret {
color:#bdbcae;
}
jQuery를 :
$(document).on("click", "span", function() {
if(typeof $(this).data('clicks') == 'undefined') {
$(this).data('clicks', 1);
}else {
$(this).data('clicks', $(this).data('clicks')+1);
}
if ($(this).data('clicks')==2){
$(this).data('clicks', 0);
window.open("page.html");
}
});
$(document).click(function(event) {
if(!$(event.target).closest("span").length) {
$("span").data('clicks', 0);
}
});
'addClass' 작동합니다. CSS를'a : active' 대신'a.active'로 바꾸면됩니다. – Barmar
나는 당신의 제안을 따랐지만 여전히 아무것도하지 않았습니다. 내 [수정 된 코드] (http://www.bootply.com/bcuXnwD3h4)를보고 무슨 일이 일어나고 있는지 볼 수 있겠습니까? 감사. – michael
'$ (this) .window.open()'이 (가) 유효하지 않습니다. jQuery 객체에는'window' 속성이 없습니다. 'window.open()'을 사용하십시오. – Barmar