我想为<div>
元素添加一些属性。除.data()
外,以下所有内容均有效。我看不出它出现在Firefox / Firebug中。
$('#menu-container')
.css('background-image','url("'+big_image+'")')
.addClass('click_2')
.data("new_link", "new_link.html")
.css('z-index',"99");
我做错了吗?
答案 0 :(得分:8)
data
不仅可以添加任何普通属性,还可以将对象和数据附加到DOM元素。您无法在HTML源代码或Firebug中看到它,但可以使用.data()
数据本身不存储在元素上。它实际上存储在$ .cache
中答案 1 :(得分:1)
.data()
正在运行,但它不会显示为元素的属性。
如果您希望看到它正常工作,可以尝试console.log($('#menu-container').data('new-link'));
如果属性符合您的要求,那么您可以执行.attr('new-link','new-link.html')
答案 2 :(得分:1)
使用
$('#menu-container').attr('data-new_link','new_link.html');
它将出现在firebug中,您还可以使用预期的jQuery行为
$('#menu-container').data('new_link');
检索存储的值..
但实际上没有必要这样做。它存储在.data()
集合中,无论是否作为DOM元素的属性添加..