2012-10-16 68 views
0

我有一個顯示/一個物品1隱藏鼠標懸停的ITEM2:如何顯示/通過懸停隱藏的項目,也被隨機延遲

$(function() { 
    $("#item1").hover(function() { 
     $("#item2").show(); 
    }, function() { 
     $("#item2").hide(); 
    }); 
}); 

我想提出ITEM2也顯示,並通過隨機隱藏在item1上懸停/懸停的時間延遲。我怎樣才能做到這一點?

+6

怎麼辦你想徘徊隱藏的東西? –

+1

如果'display'是'none',那麼你不能懸停! – Jivings

+1

你需要詳細說明你的問題 –

回答

1

增量,並根據您的需要乘以隨機數:

$(function() { 

    var blocked = false; 

    function divToggle() { 
     if (!blocked) { 
      $("#item2").toggle(); 
     } 
     setTimeout(divToggle, Math.random() * 2000); 
    }; 

    divToggle(); 

    $("#item1").hover(function() { 
     blocked = true; 
     $("#item2").show(); 
    }, function() { 
     blocked = false; 
     $("#item2").hide(); 
    }); 

});​ 

DEMO

2

jQuery代碼:

$(document).ready(function() { 
    setInterval(function() { 
     $("#item2").toggle('slow'); 
    }, 2000); 
    $(function() { 
     $("#item1").hover(function() { 
      $("#item2").show(); 
     }, function() { 
      $("#item2").hide(); 
     }); 
    }); 
}); 

在行動 - >jsFiddle - epeS4

+0

不太確定OP想要什麼,但我期望切換循環停在懸停上。 –

+0

他希望切換'並行'。是的,必須等待OP。 – hjpotter92

+0

是的,停下來是一個好主意。我還沒有意識到,但米哈爾的期望是正確的。謝謝你提出的很好的問題,他們幫助我澄清我的要求。 –