0

似乎我无法将linguettaCorrente变量存储到悬停处理程序中:

$('.navigatore_blocco').hover(
    var linguettaCorrente=$(this).find('linguetta');

    function() {
        linguettaCorrente.animate( { height: 33 }, 600);
    },

    function() {
        linguettaCorrente.animate( { height: 23 }, 600);
    }
);

为什么?我该如何存储它?

4

2 回答 2

1

在悬停外部声明相同的 var 并在内部定义它。

var linguettaCorrente = null;
$('.navigatore_blocco').hover(
    function() {
        linguettaCorrente = $(this).find('linguetta');
        linguettaCorrente.animate( { height: 33 }, 600);
    },
    function() {
        linguettaCorrente.animate( { height: 23 }, 600);
    }
);

.hover函数有 2 个参数,而这 2 个是函数。它不可能是别的东西。

于 2012-04-20T09:49:23.237 回答
0

为什么不使用.data()存储所需的数据?

$('.navigatore_blocco').hover(
    var linguettaCorrente=$(this).find('linguetta');
    $(this).data('linguetaaCorrente', linguettaCorrente);
    ....
);
于 2012-04-20T09:51:39.400 回答