0

このコードを使用すると、.cell-top にカーソルを合わせている間、毎秒コンソールに「yo」が追加されることを期待しています。しかし、私は 'yo' を 1 つ取得し、それで終わりです。

function cellUp(linkObj) {
    console.log('yo');
}
$(".cell-top").hover(function() {
    setInterval(cellUp($(this)), 1000);
});

期待される結果を得るために何ができるか考えていますか?

PS。cellDown 内の関数で $(this) を取得するために linkObj を使用していますが、私が抱えている問題とは無関係であるため、関数を含めませんでした。問題の一部である可能性があると考えたため、linkObj を含めました。

4

2 に答える 2

3

jQueryを使用しているので、使用できます$.proxy

$(".cell-top").hover(function() {
    setInterval($.proxy(cellUp, null, $(this)), 1000);
});
于 2013-06-29T19:16:34.457 に答える
2
var interval;
function cellUp(linkObj) {
    console.log(linkObj);
}
$(".cell-top").hover(function() {
    var self = this;
    interval = setInterval(function(){cellUp($(self))}, 1000);
},function() {
    clearInterval(interval);
});
于 2013-06-29T19:12:01.290 に答える