在jQuery中,我可以使用.data()将元素存储到另一个元素上以便快速检索吗?
In jQuery, can I store elements using .data() onto another element for fast retrieval?
我可以使用data()函数将dom元素(或jQuery元素)存储到另一个元素上吗?
是按值存储还是按引用存储?这是好的练习吗?
我希望能够快速轻松地找到主元素的从元素(参见下面的代码),如下所示:
$slave = $('.some .path .to .slave');
$master = $('.some .path .to .master');
$master.data('slave', $slave);
$master.click(function (){ $(this).data('slave').toggle() });
(显然代码是愚蠢的,但我实际上是循环通过大量的主和从元素。)
你可以存储任何你想要的,不管你是否需要。
JS变量是对对象的引用,不是吗?(这只是部分修辞;除了引用,DOM查询还会返回什么?)深拷贝?)我知道你可以这样做:
var slavePath=$('.some .path .to .slave');
var master=$('.some .path .to .master').data('slave', slavePath);
master.click(function(){ $($this.data('slave')).toggle()});
仅将选择器存储到从属对象,而不是整个对象。
相关文章:
- 使用clickToggle并在单击另一个元素时关闭元素
- 按我自己的类克隆另一个元素的内容和顺序
- 如何通过HTML+CSS中的另一个元素Selector更改元素的属性值
- 使用svg和javascript将一个类的元素动画化为另一个类
- 将html元素插入到文本字符串中,以匹配另一个html字符串
- jQuery-将列表项的一个元素移动到同一项的另一个元素中+对我的列表中的每个项执行此操作
- jquery从另一个元素中移除移除
- DIV怎么能像Javascript中的另一个元素一样工作呢
- 使用数据属性将HTML数据复制到另一个元素
- 如何从另一个带下划线的数组中筛选带元素的数组
- 将鼠标悬停在Angular JS中的一个元素上,并将Class添加到另一个元素中
- 在类JavaScript选择的另一个元素中选择一个标记元素
- 只要存在,就用另一个元素替换一个元素
- 检查一个元素是否有一个类与另一个类总是返回true
- 初学者反应查询(如何删除一个元素并附加另一个元素)
- 将jquery ui窗口的父元素设置为另一个元素
- 如何激活下拉菜单:在一个元素上单击768px宽度下方,在另一个元素上将鼠标悬停在768px上方
- Pixijs将元素附加到另一个元素
- 将SVG元素拖动到另一个SVG元素上
- JavaScript:将输入范围行为链接到另一个元素