我正在尝试将hover事件同时分配给2个元素。有更好的方法吗?
//I want to assign hover to another element.
$element1=$('hi');
$element2=$('hi2');
//I need to assign element 1 and element 2 to the same hover function...
$element1.hover(function(e){
codes......
})
感谢您的帮助。
答案 0 :(得分:3)
试试这个,
<强> Live Demo 强>
$element1.add($element2).hover(function(e){
codes......
});
或
$('hi, hi2').hover(function(e){
codes......
});
或者如果你想用ids代替hi
$('#hi, #hi2')hover(function(e){
codes......
});
答案 1 :(得分:3)
如果hi和hi2是实际元素,那么:
$('hi,hi2').hover(...
根据实际元素,我的意思是
$('div,p').hover(...
可行,但根据您的示例,我无法告诉hi
和hi2
是什么,因为它们不是元素,类,ID或其他可识别的东西。
答案 2 :(得分:2)
所以,让我们说这些是你想要将悬停绑定到的元素:
<div class="yay-for-hover">a</div>
<div class="yay-for-hover">b</div>
<div class="yay-for-hover">c</div>
您可以在jQuery中使用此选择器进行绑定:
$('.yay-for-hover').hover(function() {
// Do stuff here.
});
我只是选择了班级选择器,因为对我来说,他们在这里最有意义。如果您希望页面上的元素触发悬停事件,只需将类添加到其中即可。查看jQuery reference on selectors以获取更多帮助。
答案 3 :(得分:0)
您可以使用.add()方法,它从这些元素的并集和传递给方法的元素构造一个新的jQuery对象,这意味着您可以将新的元素集存储在变量中或使用它直接,像这样:
var $element1=$('hi'),
$element2=$('hi2');
$element1.add($element2).hover(function(e){
codes......
});