2011-07-07 59 views
-1

可能重複:
Mouseout on specified divs and keep original div open鼠標移開從DIV到鄰近格,保持主要格開,mousout這些div外,主要的div關閉

我問過類似的問題,它得到了埋沒有任何解決這個問題的答案,所以請不要因爲我已經等待而解僱我,而且沒有答案。

這裏是原題:Mouseout on specified divs and keep original div open

這裏是小提琴所有設置: http://jsfiddle.net/bUzPG/10/

好像一切都應該與小提琴工作,但代碼不會做它應該。任何工作答案都會被標記爲已解決,這讓我瘋狂!

+0

請不要問重複的問題。如果你想修改你的問題,只需編輯你的原稿。 –

回答

0

如果我理解正確:

$("#openDiv").mouseout(function (e) { 
var used_classes = ['x', 'z']; 
var $c = $(e.relatedTarget).attr('class'); 

    if ($c=='x' || $c=='z') 
{ 
    $("#openDiv").show().css('background-color', 'pink'); 
}else{ 
    $("#openDiv").hide(); 
} 
    }); 
0

最簡單的方法是包裝在父divdiv元件和分配hover()事件到該容器:

HTML:

<div> 
    <div class="x">x</div> 
    <div id="openDiv" class="y">me</div> 
    <div class="z">z</div> 
</div> 

的jQuery:

$('.container').hover(
    function(){ 
     $('#openDiv').addClass('highlight'); 
    }, 
    function(){ 
     $('#openDiv').removeClass('highlight'); 
    }); 

JS Fiddle demo

銘記父div(或其他含有元素)需要緊貼於div元素的界限,否則mouseleave事件將不會觸發如你所期望的),這就是爲什麼div(但不是div > div s)浮動。其他選項包括display: inline;display: inline-block;