2010-11-05 97 views
1

可以使用懸停功能設置if-else條件嗎?當我將它懸停時,我想在文本鏈接旁邊加載一個頁面,並且希望能夠將鼠標懸停在加載的內容上。但這種加載的內容將在兩種情況下將其刪除:if-else條件與懸停功能?

  1. when the mouse leave the loaded content
  2. when the mouse leave the box that holds the text link

,但我有情況編號爲2的問題 - 如果我申請的編號爲2的懸停功能,數字1不會發生。當我的鼠標離開文本鏈接框時,加載的內容會立即被刪除。所以,我想如果可能的話(或者其他更好的主意,如果你有任何其他的)如果條件的懸停功能?我想刪除加載的內容只有當情況編號沒有發生。如果我對已加載的內容進行了挖掘,那麼請不要應用2號情況,直到我的鼠標離開加載的內容區域。

下面是jQuery的(對數的情況1):

$(document).ready(function() { 
    $(".button").hover(function(e){ 

     $('.wrapper-item-content').remove(); 

      var parent = $(this).parent(); 
      $(this).parent().addClass('current'); 


     var parent_top = parent.offset().top-180; 
     var parent_left = parent.offset().left+80; 

     $("body").append('<div class="wrapper-item-content"></div>'); 

     $(".wrapper-item-content").css({ 
      top: parent_top, 
      left: parent_left, 
      position: 'absolute', 
      zIndex: '100', 
      width: '350px', 
      height: '100%', 
      overflow: 'visible', 
      border: '1px solid #000' 
     }); 

     var path_url = $(this).attr('href'); 
     var path_file = $(this).attr('rel'); 
     var item_wrapper = $('.wrapper-item-content'); 

     var array_url = path_url.split('/'); 
     var pg_url = $(array_url).last()[0]; 

     item_wrapper.load(path_file+'?url='+pg_url, function(){ 

      item_wrapper.hover(function() { 
       item_wrapper.addClass('mouseenter'); 
      },function(){ 
       item_wrapper.removeClass('mouseenter'); 
       parent.removeClass('current'); 
       item_wrapper.remove(); 
      });  

      parent.hover(function() { 
       //something 
      },function(){ 

       if(item_wrapper.hasClass('mouseenter')) 
       { 
        //alert('has mouseenter'); 
       } 
       else 
       { 
        //alert('has no mouseenter'); 
        //parent.removeClass('current'); 
        //item_wrapper.remove(); 
       } 
      }); 

     }); 

    }, 
    function(){ 

    });  
}); 

的HTML:

<div class="box"><a href="#" class="button" rel="content.php">Hover me</a></div> 
+0

做這項工作? – hunter 2010-11-08 16:07:41

+0

嗨感謝您的答覆。是的,它確實 - 在我改變了我的CSS之後。所以我不必依靠javascript :-)看看我的實現http://rokhsanafiaz.co.uk/events在這裏謝謝! – laukok 2010-11-08 19:01:18

回答

6

hover()事件可以被稱爲鼠標離開時,另一個函數。

$(".button").hover(
    function(e){ }, // over 
    function(e){ } // out 
); 

http://api.jquery.com/hover/

懸停(handlerIn(eventObject)傳遞,handlerOut(eventObject)傳遞)