Javascript hover()事件处理程序不考虑动态更改的类
这是我的代码:Javascript hover()事件处理程序不考虑动态更改的类,javascript,jquery,html,css,hover,Javascript,Jquery,Html,Css,Hover,这是我的代码: <li class="dropdown"> ... </li> 当页面第一次加载时,的类仍然是下拉式的,当页面滚动到70px以下时,类替换为下拉式折叠。问题是我的悬停函数在下拉类替换为下拉类时不起作用。请帮帮我,谢谢。您的问题是因为您在加载页面时附加了悬停事件处理程序。元素上类的更改对任何已绑定的事件处理程序都没有影响。要执行所需操作,必须使用委托事件处理程序,如下所示: $(window).scroll(function() { var
<li class="dropdown">
...
</li>
当页面第一次加载时,
的类仍然是下拉式的,当页面滚动到70px以下时,类替换为下拉式折叠。问题是我的悬停函数在下拉类替换为下拉类时不起作用。请帮帮我,谢谢。您的问题是因为您在加载页面时附加了悬停事件处理程序。元素上类的更改对任何已绑定的事件处理程序都没有影响。要执行所需操作,必须使用委托事件处理程序,如下所示:
$(window).scroll(function() {
var offsetTop = $(".navbar").offset().top;
$(".dropdown, .dropdown-collapse")
.toggleClass("dropdown-collapse", offsetTop > 70)
.toggleClass("dropdown", offsetTop <= 70)
});
$(document).on('mouseenter', '.dropdown-collapse', function() {
$(this).addClass('open');
}).on('mouseleave', '.dropdown-collapse', function() {
$(this).removeClass('open');
});
$(窗口)。滚动(函数(){
var offsetTop=$(“.navbar”).offset().top;
$(“.dropdown,.dropdown collapse”)
.toggleClass(“下拉折叠”,偏移>70)
.toggleClass(“dropdown”,抵消了。hover
方法实际上已经被弃用。那么我必须使用什么?@PraveenKumarmouseenter
,mouseleave
?谢谢,man@PraveenKumarI还没有验证它是否有效,但是+1教我一种使用.toggleClass()
的新方法。