我会疯狂地盯着这个。我需要更改元素的属性,这是我之前做过很多次的事情。但它失败了。现在我甚至不能让jquery向我展示它具有的属性。是否与find()返回的内容有关?
var c = new_photo_div.find('[class = photo]')[0];
alert(c);
alert(new_photo_div.attr('class'));
alert(c.attr('class'));
第一个警报正确识别元素:Object HTMLImageElement
第二个警报正确地给了我new_photo_div的类。
第三次警报失败。没有警报。
我认为应该说:照片
答案 0 :(得分:2)
这是因为c
不是jQuery对象。删除[0]
以将jQuery对象分配给c
。
答案 1 :(得分:1)
你正在使用new_photo_div.find('[class = photo]')[0]
Dom元素而不是jquery对象。
试试这个
$(c).attr('class');
答案 2 :(得分:0)
在浏览器控制台中,会出现错误,
无论如何,attr是jQuery的一种方法,不要做[0],
如果您使用的是较新的jquery库,也可以使用.prop而不是.attr。