在我发送一个 Ajax 请求并且它成功之后。jquery.hover() 不适用于页面的新部分。
有没有办法在不通过另一个 ajax 请求重新加载 div 的情况下重新加载脚本,以便它与页面的新部分一起使用。
在我发送一个 Ajax 请求并且它成功之后。jquery.hover() 不适用于页面的新部分。
有没有办法在不通过另一个 ajax 请求重新加载 div 的情况下重新加载脚本,以便它与页面的新部分一起使用。
您不能在动态元素上使用hover(),因为它不是事件处理程序,您需要对mouseenter和mouseleave事件使用委托事件处理
.hover()
是使用 mouseenter 和 mouseleave 的简写,但它只会将处理程序附加到执行时存在于 dom 中的那些元素
前任
$(document).on('mouseenter', '<selector>', function(){
//do something
}).on('mouseleave', '<selector>', function(){
})
您可能已经在 $(document).ready(); 上添加了悬停动作。由于页面加载时新页面内容不存在,因此您必须在通过 ajax 更新新内容后重新绑定悬停动作。
由于新部分是动态添加的,因此 jquery hover 将无法使用它。
试试这个
$(document).on('mouseenter', 'selector', function(){
// Code to perform on mouse enter
}).on('mouseleave', 'selector', function(){
// code to perform on mouse leave (This is optional)
})