知道为什么我的代码不能按原样运行吗?如果我在移动导航切换时前两次点击它,它可以正常工作,但第三次没有按我的意愿添加边距。
jQuery(document).ready(function($){
$("#site-navigation.main-navigation").click(function(){
$("#page").css("margin-top", "285px");
});
$("#site-navigation.main-navigation.toggled").click(function(){
$("#page").css("margin-top", "0px");
});
});
答案 0 :(得分:2)
当#site-navigation.main-navigation
具有“.toggle”类时,您的两个事件同时触发。这不是你想要的。这段代码可以满足您的需求。
jQuery(document).ready(function($){
$("#site-navigation.main-navigation").click(function(){
if ( $(this).hasClass('toggled') ) {
$("#page").css("margin-top", "0px");
} else {
$("#page").css("margin-top", "285px");
}
});
});
答案 1 :(得分:0)
切换CSS类。
document.getElementById("foo").addEventListener("click", function(e) {
this.classList.toggle("bump-it");
});

.bump-it{
margin-left:24px;
}

<button id="foo">
click me
</button>
&#13;