我正在尝试将元素的类设置在同一元素的数据对象中,但它会一直返回undefined。
$(this).data({
orgSize:{ // Write all the sizes as data. For future reference.
width: $(this).width(), //returns the width just fine!
height: $(this).height() //returns the height just fine!
},
orgClass: function(){
cl = $(this).attr('class');
if(cl){
return ' ' + cl;
}else{
return ' somethingelse';
}
} //returns undefined
});
console.log($(this).attr('class')) //returns the class
编辑:问题出在orgClass中。
答案 0 :(得分:6)
var me = $(this);
me.data({
orgSize : { width:me.width(), height:me.height() },
orgClass : function(){
cl = me.attr('class');
return cl ? (' '+cl) : ' somethingelse';
}
});
答案 1 :(得分:0)
它是一个范围问题,'orgSize'中的'this'指的是'orgSize'对象本身..