在jQuery中定位多个变量

时间:2010-06-30 21:27:08

标签: jquery variables

我知道这可能是一个非常简单的修复。我需要为这个函数使用2个变量,并且当前代码只会触发第一个变量。变量必须用于相关函数。

var a = $(h1), b = $(h2); 

    $(a, b).hover(function(){
        ...stuff happens here
    });

请不要建议类似下面的方案。变量需要使用。

$('h1, h2').hover(function(){...});

3 个答案:

答案 0 :(得分:7)

您最初不需要使用jQuery包装变量。

假设h1h2代表DOM节点:

$([h1, h2]).hover(function(){
    ...stuff happens here
});

我们正在传递一个数组,因为jQuery函数接受一个DOM元素数组。请参阅docs

请参阅examples

答案 1 :(得分:1)

a.hover(myHover);
b.hover(myHover);

function myHover(){
     alert('i wish you a happy hovering!');
}

$ function的第二个参数定义了搜索的dom块,如果你把它留出来就需要挖洞文件。所以如果你想在页面上获取所有元素,你最好不要乱用

答案 2 :(得分:1)

如果出于某种原因你必须使用代表jQuery集合的单独分配的变量,你可以add

var a = a.add(b);
$(a).hover(...

另外,不要忘记您可能需要$('h1'),而不是$(h1)

Here's a working fiddle