2013-08-18 82 views
1

#myDiv是一个可点击的框,如果#myDiv被点击,则会添加一个类.opened。我的jQuery读取jQuery div类更改

if ($('#myDiv').hasClass('open')){ 
var myValue = "1"; 
}else{ 
var myValue = "2"; 
} 

显然,后页面加载完成后,myValue总是等于2,但点击后#myDivmyValue仍然是我应该使用2.什么事件来检测我的元素是否改变?我也想支持IE7 +。谢谢!

+1

你有错字.. myVaule? – Krishna

+0

@dumass谢谢!编辑! – olo

+3

由于错字,您的问题是否已解决?也根据你的编辑..如果“打开”是你的类名,那么hasClass('打开')应该是你的条件。 – Krishna

回答

0

您将不得不重新运行代码,因为某个类已被添加/删除,所以无法更改该代码。

所以,当点击发生时,你需要调用一个函数来设置值。

0

在您的点击事件侦听器中,订阅您的元素自定义trigger$('#myDiv').trigger('openedClassAdded')

然后

$('#myDiv').on('openedClassAdded', function() { 
    myValue = '2'; 
});