我正在寻找一种替代方法,以实现与.toggleClass()
类似的效果,该方法将特定类切换为开/关元素((由于.toggleClass()
与Safari似乎不兼容) )
这是我用来实现要在其间切换的类的代码行:
$window.on('scroll', function() {
div2.toggleClass('show', scrollTop >= (div1_top - window_top_to_div2) && (scrollTop + window.innerHeight) <= (div1_bottom + window_top_to_div2));
});
此外,我在之前的文章中提供了更广泛的摘要,这里为Can toggleClass Work in Safari? (JQuery)
答案 0 :(得分:0)
如果我正确理解,那应该就是您要寻找的。它使用与您相同的代码,但稍作更改即可使用addClass
和removeClass
函数而不是toggleClass
。
$window.on('scroll', function() {
if (scrollTop >= (div1_top - window_top_to_div2) && (scrollTop + window.innerHeight) <= (div1_bottom + window_top_to_div2)) {
if (div2.is(":visible")) {
div2.removeClass('show');
} else {
div2.addClass('show');
}
}
});