为什么这个jQuery选择器根本不起作用? 选择另一个元素,如$(“body”)或另一个div工作正常。 这个选择器在CSS中起作用
使用Javascript:
$(".slideshow, .slideshow figure, .slideshow figure img").hover( function() {
stopSlideshow();
alert("HEY");
},
function(){
startSlideshow();
});
HTML:
<div class="slideshow">
<?php
$counter = 1;
foreach($images as $image)
{
echo "<figure>
<img src=\"" . $image . "\" width=\"1024\" height=\"600\" />
<figcaption>ehojlhaiel;jgaelgkjnaqgjqaegaeg</figcaption>
</figure>";
}
?>
</div>
生成的HTML: http://i.stack.imgur.com/W3w6g.png
答案 0 :(得分:1)
当你的slideshow
div实际加载到DOM中时,它就是在正确的时间绑定悬停事件。要修复它,你可以这样做:
$(document).on("mouseenter", ".slideshow", function(){
//your code
});
通过这种方式,您无需等到slideshow
加载到DOM中。
不使用直播活动的另一种方法是在将slideshow
添加到页面后运行代码。
答案 1 :(得分:0)
试试这个
jQuery("div.slideshow").hover(function() {
// code inside here
});
如果动态生成此div,则执行此操作
jQuery("div.slideshow").on("hover",function() {
// code inside here
});