2014-11-06 103 views
1

jQuery的週期照片我已經成功地實現當鼠標懸停一個div循環和週期改變background-image和停止其他divs在DIV背景

會發生什麼事是,這div有當鼠標懸停在div出現一個標題,如果我搶光標,並在標題,然後再次將光標移動到其他div稱號,週期繼續在兩個divs,我不想。

我清除interval cycle這樣:clearInterval(theInterval);

但是,不知何故,當標題被徘徊它不會停止其他循環。

問題可以在JSFiddle中看到。

模擬問題:

  1. 將光標放在標題
  2. 快速將光標移動到其他分區冠軍
  3. 你會看到兩個div的繼續獨立於週期(和我只想要一個循環)

模擬它是如何工作的:

  1. 將光標放在股利(沒有在標題爲)
  2. 將光標移動到其他分區
  3. 你會看到只有一個DIV週期
+0

替換 '鼠標懸停' 與 '的mouseenter' 和 '鼠標移開' 與 '鼠標離開'。該代碼也將簡化 - [小提琴](http://jsfiddle.net/g9d16b2L/) – 2014-11-07 00:58:28

回答

0

我相信這是這個事件的性質有問題,而且divs非常接近。嘗試使用懸停事件。見this fiddle

本質:

$('.collection-photo').hover(function(){ 
    // mouse over stuff here 
}, function() { 
    // mouse out stuff here 
}); 
+0

正確的解決方案,錯誤的分析。 '.hover()'工作,因爲它等價於'$(selector).mouseenter(handlerIn).mouseleave(handlerOut)'; – 2014-11-07 01:02:05

+0

所以你說'hover()',它是'mouseenter'和'mouseleave',行爲不同於'mouseover'?那不是我所說的 - 它的性質是不同的? – elzi 2014-11-07 01:07:06

+0

對不起,我應該更具體。這是「我非常接近」,我不同意。我不認爲這是相關的。這與'mouseleave'比'mouseout'更可靠。 – 2014-11-07 01:23:42