所以我只是在身体没有上课时才尝试执行脚本" shifter-open"。 " shifter-open" -class被这个脚本添加到正文中:
$( document ).ready(function() {
$("body").addClass("shifter shifter-active");
$('.shifter-handle').click( function() {
$("body").toggleClass("shifter-open");
$(".scrollheader").toggleClass("hovered");
});
});
我的脚本只应该在身体没有上课时才会执行:(注意我如何使用if(!$(" body"))
if (!$("body").hasClass("shifter-open")) {
$( document ).ready(function() {
var $header = $(".scrollheader");
$header.hover(function() {
if ($(window).scrollTop() == 0) {
$header.addClass('hovered');
}
},function() {
if ($header.hasClass('hovered')) {
$header.removeClass('hovered');
}
});
});
}
答案 0 :(得分:1)
您需要检查事件处理程序内部,因为在页面加载后可以由用户切换类
$(document).ready(function() {
var $header = $(".scrollheader");
$header.hover(function() {
if ($("body").hasClass("shifter-open") && $(window).scrollTop() == 0) {
$header.addClass('hovered');
}
}, function() {
if ($("body").hasClass("shifter-open")) {// no need to check if the hovered class exists
$header.removeClass('hovered');
}
});
});