我有这个代码,它使信息框跟随鼠标。它非常简单,只需检查您悬停在div中的自定义属性“description”并将其放入框中。但是,我想这样做,如果该div也有一个特定的CSS类,那么除了其他代码仍在工作之外,它还会在框中添加其他信息。
$(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();
});
});
这就是我现在的代码。我页面中没有任何一个悬停工作。这是有效的代码。除了没有声明之外,它在各方面都是相同的。
$(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语句就会破坏整个事情。我完全不知道如何继续或如何解决它。
答案 0 :(得分:3)
罪魁祸首..
if ("div")
也许你在尝试
if($("div").something()){
}
答案 1 :(得分:2)
if ("div").hasclass("item") {
应该是:
if ( $("div").hasClass("item") ) {
还有一些你还可以测试:
if ( $("div").is(".item") ) {
了解jQuery .is()