我想.data()在我的应用程序中使用.这些示例很有帮助,但我不明白存储值的位置.
我使用Firebug检查网页,只要.data()将对象保存到dom元素,我就看不到Firebug中的任何更改(HTML或Dom选项卡).
我试着看看jQuery源码,但它对我的Javascript知识来说非常先进,我迷失了自己.
所以问题是:
jQuery.data()存储的值实际上去了哪里?我可以使用工具检查/定位/列出/调试它们吗?
我有许多具有预定义属性的元素data-key="foo".现在,在更新此元素值后,我还更新了它的data-keyattribute($(this).data('key', 'boo');).之后我无法再使用选择器选择它[data-key="boo"].我在这做错了什么?
我不想再次循环所有元素并检查它的data-key属性值.另外据我所知,:data(key)选择器无法按键和值选择元素?
$(document).ready(function() {
$('[data-key="foo"]').data('key', 'boo');
setTimeout(function() {
$('[data-key="boo"]').css('color', 'green');
$('#element').append(' - Now it must be green, because data-key now is ' + $('#element').data('key'));
}, 1000);
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-key="foo" id="element">MAKE THIS GREEN</div>
<div data-key="boo" >data-key="boo" by default...</div>Run Code Online (Sandbox Code Playgroud)