Jquery向悬停事件添加一些变量

时间:2012-04-27 10:45:54

标签: jquery variables hover

我创建一些a-tags并将其存储在不同的变量中。现在,我想为这个存储的变量添加一个悬停事件。

类似的东西

var btnPrev = $(document.createElement('a'));
btnPrev.css({
    'display':'block',
            ...
});
btnPrev.text('<');
btnPrev.addClass('issueBtnPrev');
var btnNext = $(document.createElement('a'));
btnNext.css({
    'display':'block',
            ...
});
btnNext.text('>');
btnNext.addClass('issueBtnNext');

现在这里是悬停事件

(btnNext,btnPrev).hover(function() {
    $(this).fadeTo(200,'0.3');
}, function() {
    $(this).fadeTo(200,'.2');
});

但只有btnPrev有悬停效果才有办法将多个vaiable附加到悬停效果。

我知道我可以使用     $('。issueBtnNext,.issueBtnPrev')。hover

2 个答案:

答案 0 :(得分:1)

您需要add匹配集合的元素:

$(btnNext).add(btnPrev).hover(...);

http://jsfiddle.net/zerkms/qSYXk/

答案 1 :(得分:1)

您可以使用add方法将另一个jQuery对象(或元素,HTML片段等)添加到当前集合中:

btnNext.add(btnPrev).hover(function() {
    $(this).fadeTo(200,'0.3');
}, function() {
    $(this).fadeTo(200,'.2');
});

来自add上的jQuery文档:

  

给定一个表示一组DOM元素的jQuery对象,   .add()方法从这些对象的并集构造一个新的jQuery对象   元素和传递给方法的元素。

您当前的尝试仅适用于btnPrev,因为您正在使用comma operator来评估其两个操作数(在您的情况下什么都不做)并返回最后一个,在您的情况下是{{} 1}}。