带有两个元素选择器的jQuery委托
如果我的站点是在触摸设备上查看的,我试图禁用与悬停事件相关的功能。如果设备是触摸式,则我的身体标签有“.touch”,如果没有触摸,则有“.no touch” 当我用touch类编写这样的委托函数时带有两个元素选择器的jQuery委托,jquery,mobile,Jquery,Mobile,如果我的站点是在触摸设备上查看的,我试图禁用与悬停事件相关的功能。如果设备是触摸式,则我的身体标签有“.touch”,如果没有触摸,则有“.no touch” 当我用touch类编写这样的委托函数时 $('.no-touch .list').delegate('img', 'hover', function() { ... } 即使我没有使用触摸设备,它也会停止工作。另外,在Chrome开发者工具中,当我查看元素时,body标签上有touch类,而在源代码视图中body标签没有该类。这可能是问
$('.no-touch .list').delegate('img', 'hover', function() {
...
}
即使我没有使用触摸设备,它也会停止工作。另外,在Chrome开发者工具中,当我查看元素时,body标签上有touch类,而在源代码视图中body标签没有该类。这可能是问题的一部分吗?当您将委托处理程序分配给某个查找body标记的选择器时,仅更改body的类以将其从该处理程序中删除是不够的。您必须:
$('.no-touch, .list').delegate('img', 'hover', function() {
...
}
$('.no touch,.list')
这不是针对两个选择器吗?我尝试仅当.list位于带有.no touch的body元素中时才使用函数trigger
$('whateverSelectorIsRelevantNow').undelegate('img', 'hover', function() {
...
}