首先是小型的javascript腳本:使用javascript設置的時間間隔增量變量?這一切
f = 1
$(".thumb").hover(function() {
intervalId = setInterval($(this).text(f++), 400));
});
林試圖讓.thumb文本增加,而用戶莫伊茲超過它,它,當我徘徊之後再次懸停,但增加了我想要在用戶懸停在元素頂部時增加。
首先是小型的javascript腳本:使用javascript設置的時間間隔增量變量?這一切
f = 1
$(".thumb").hover(function() {
intervalId = setInterval($(this).text(f++), 400));
});
林試圖讓.thumb文本增加,而用戶莫伊茲超過它,它,當我徘徊之後再次懸停,但增加了我想要在用戶懸停在元素頂部時增加。
你將不得不實際功能傳遞給setInterval()
這樣的:
f = 1
$(".thumb").hover(function() {
var self = $(this);
intervalId = setInterval(function() {self.text(f++)}, 400));
});
你在做你原來的代碼是什麼使呼叫$(this).text(f++)
其立即執行,以setInterval()
的結果。由於該函數沒有返回函數,因此setInterval()
沒有回調函數,因此沒有任何內容在間隔上運行。
如果你也想停下來當你停止徘徊區間,那麼你可以這樣做:
var f = 1;
var intervalId;
$(".thumb").hover(function() {
var self = $(this);
if (intervalId) {
clearInterval(intervalId);
}
intervalId = setInterval(function() {self.text(f++)}, 400));
}, function() {
f = 1;
clearInterval(intervalId);
intervalId = null;
});
謝謝@ jfriend00,它的工作:) – unknown 2013-03-09 05:58:42
這不會停止時,用戶鼠標懸停,並再次觸發,並開始更快時,有多個鼠標懸停。 – MattDiamant 2013-03-09 06:02:29
@MattDiamant - 是的,如果這是他們想要的行爲,則OP需要延長其代碼以停止懸停停止的時間間隔。我不知道OP在尋求幫助。我已將該選項添加到我的答案中。 – jfriend00 2013-03-09 06:04:41
這個工作,但也有可能是一個更簡單的方法:
<script>
var f = 1
var intervalId;
var started = false;
$(".thumb").hover(function() {
started = true;
},
function() {
started = false;
});
intervalId = setInterval(incrementDiv, 400);
function incrementDiv() {
if (started) {
$(".thumb").text(f++);
}
}
</script>
當鼠標懸停在元素上時,這將開始增加數值,並在鼠標光標移開時停止。
嘗試:
var f = 1,
intervalId;
$(".thumb").hover(function() {
$this = $(this);
intervalId = setInterval(function() {
$this.text(f++);
}, 100);
}, function() {
clearInterval(intervalId);
});
小提琴here
這裏是一個小提琴,你想要做什麼:http://jsfiddle.net/2pdnP/
var f = 1;
var intervalId = null;
$(".thumb").hover(function() {
var self = this;
intervalId = setInterval(function() {$(self).text(f++)}, 400);
}, function() {
clearInterval(intervalId);
});
你需要有intervalId您hoverIn範圍之外定義,然後在您懸停時停用它。
請更清楚地解釋你的問題。我不明白你的意思是什麼,「當我徘徊並且再次盤旋時,它會增加,但是當用戶在元素上方徘徊時,我想增加。」 – 2013-03-09 05:47:25
我認爲他的意思是他希望數字在鼠標移過它時不斷增加,但每次將鼠標移到它上面時它只會增加一次。我理解正確嗎? – 2013-03-09 05:48:08
是啊@AdamPlocher我想不斷增加! – unknown 2013-03-09 05:51:08