2012-07-02 57 views
-3

我有這樣的代碼,使信息框隨鼠標一樣。它非常簡單,只需檢查您懸停的div中的自定義屬性「description」並將其放入框中即可。不過,我想這樣做,如果該div也有一個CSS類,那麼它會將其他信息放在框中,除了其他代碼仍在工作。JQuery懸停代碼:添加If語句將其分解

$(document).ready(function(){ 
$(".hover").mousemove(function(e){ 
    if ("div").hasclass("item"){ 
     alert("div hasclass item"); 
    } else { 
     var description = $(this).attr("description"); 
     $("#hoverdiv").text(description).show(); 
     $("#hoverdiv").css("top", e.clientY+10).css("left", e.clientX+5); 
    } 

}).mouseout(function(){ 
    $("#hoverdiv").hide(); 
}); 

});

這就是我現在的代碼。我的網頁中沒有一個懸停在工作。這是可行的代碼。除了沒有if語句之外,它在各方面都是相同的。

$(document).ready(function(){ 
$(".hover").mousemove(function(e){ 
    var description = $(this).attr("description"); 
    $("#hoverdiv").text(description).show(); 
    $("#hoverdiv").css("top", e.clientY+10).css("left", e.clientX+5); 
}).mouseout(function(){ 
    $("#hoverdiv").hide(); 
}); 

});

我已經試過一次又一次得到這個工作,並通過我的測試,似乎只是添加一個if語句打破了整個事情。我完全不知道如何進行或如何解決它。

+1

你。 – TheZ

+0

幷包含粗俗的語言。 –

+1

爲什麼if語句甚至有用? '$(「div」)。hasClass'沒有任何意義 – Esailija

回答

3

的culrpit ..

if ("div") 

也許你試圖

if($("div").something()){ 
} 
+2

下次檢查你的'console'或'firebug'消息。 :) –

2
if ("div").hasclass("item") { 

應該是:

if ($("div").hasClass("item")) { 

對於一些還可以測試:

0如果條件格式錯誤
if ($("div").is(".item")) { 

閱讀有關jQuery的.is()