jQuery选择器和一个bug
我想选择页面上的所有图像,并为鼠标悬停事件附加一个函数。这是一个向你展示我到目前为止所拥有的。在JavaScript部分的底部,您可以看到我正在两次运行相同的代码,每个图像一次。在我看来,我应该能够在这里使用.each()函数,但我已经尝试过了,但无法让它工作。以下是我想将两个重复呼叫转换为一个:jQuery选择器和一个bug,jquery,jquery-ui,Jquery,Jquery Ui,我想选择页面上的所有图像,并为鼠标悬停事件附加一个函数。这是一个向你展示我到目前为止所拥有的。在JavaScript部分的底部,您可以看到我正在两次运行相同的代码,每个图像一次。在我看来,我应该能够在这里使用.each()函数,但我已经尝试过了,但无法让它工作。以下是我想将两个重复呼叫转换为一个: $("#gen").one('mouseover', function() { runTransfer('gen'); return false; }); $("#bo").one('mouseov
$("#gen").one('mouseover', function() { runTransfer('gen'); return false; });
$("#bo").one('mouseover', function() { runTransfer('bo'); return false; });
仅供参考,这里还有一个bug(代码的不同部分),我正试图解决……但一次只能解决一个问题。:) 你能给这些图片一个类,然后在类上选择吗 HTML:
要逐字回答您的问题,您可以使用:
下面是一些实现此技巧的代码:
$.each(['gen','bo'],function(i,id){$('#'+id).one('mouseover',function(){
runTransfer(id);
})})
每个图像已经有一个类,该类正在页面上定位它。我认为我不能使用你的建议,因为我的每个图像都需要一个唯一的类。你的图像只能分配一个唯一的类给它们?这不是id属性的目的吗?也许……我不是CSS专家。:)图像需要绝对定位在带有x/y坐标的页面上,我使用CSS类来实现这一点。@karim79有正确的答案。我想我对jQuery不太了解。但是您可以在一个元素上有多个类,而不会妨碍您的样式设计。只需在每个元素中添加类似“addeventome”的内容,在karim79的答案中,将“#gen,#bo”更改为“.addeventome”。我真正想要的是避免每次在页面中添加图像时更改代码(jQuery,而不是HTML)。你和karim79的答案都没有告诉我。但是他们确实把我的代码缩短了不少,所以我就不去管它了。:)仅供参考,而不是将回调函数传递给正在执行的
.effect
。将代码更改为$(“#”+imgID).effect(“transfer”,options,1000,function(){afterTransfer(imgID);})代码>
$(".addEventToMe").each(function(elm) {
elm.one('mouseover', function() { runTransfer('gen'); return false; });
}
$("#gen, #bo").one('mouseover', function() {
runTransfer(this.id);
return false;
});
$.each(['gen','bo'],function(i,id){$('#'+id).one('mouseover',function(){
runTransfer(id);
})})