我已将自定义数据属性分配给添加到 Raphael 画布的一些圆圈,如下所示each()
loop:
marker.data('transaction', transaction);
如何在画布上找到具有相同交易数据值的元素?
目前我有代码:
var found = document.querySelectorAll("[transaction='" + current_transaction +"']");
Which should返回一个包含元素的 NodeList,但它不起作用。要将数据检索到变量中,很简单var foo = marker.data('transaction')
,但显然,如果我想检索元素的 NodeList,这不起作用。
因此,我希望我的选择器如下所示,但我无法计算出正确的语法:
var found = document.querySelectorAll("data('transaction' = 1)");
任何帮助将非常感激
由于 Raphael 必须支持 VML,因此它不会像 html5 应用程序那样将数据保存在 DOM 中。如果你想在 dom 中存储数据,你必须访问 html 节点并在那里设置属性......
marker.node.setAttribute('data-transaction', transaction);
然后您可以使用以下命令查询元素querySelectorAll
。请记住,这在
如果您想保留较旧的 IE 支持,我建议您编写一个函数来迭代您的标记并在以下情况下返回 Raphael 对象:mark.data("transaction") == transaction
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)