JQuery .hover()函数是外部的

时间:2011-11-10 10:07:06

标签: jquery

我今天遇到了一个小问题。我有一个divbox。如果我悬停它,这个divbox应该扩展,如果我离开它应该会崩溃。

所以我写了两个函数:

  1. function expand(){....};
  2. function collapse(){....};
  3. 然后我尝试按照以下方式执行悬停效果:

    $('.divboxes').hover(expand(), collapse());
    

    我认为这会奏效......但......不是。

    我曾多次使用它:

    $('.divboxes').hover(function(){...},function(){...});
    

    并且它有效...所以有人可以解释我做错了什么吗?我想要外部函数!

4 个答案:

答案 0 :(得分:5)

从函数名中删除括号,因为这会将展开/折叠函数的输出附加到事件。

$('.divboxes').hover(expand, collapse);

答案 1 :(得分:1)

尝试:

$('.divboxes').hover(expand, collapse);

您只需将参考传递给函数。

答案 2 :(得分:0)

只需传递函数的名称。

$('.divboxes').hover(expand, collapse);

答案 3 :(得分:0)

必须像这样使用它:

$('.divboxes').hover(expand, collapse);