我有一个列表,其中添加了这样的数据集属性
<li data-name="Correos" data-application="main" data-action="correos">
<a href="#">Correos</a>
</li>
我正在选择元素 a 并使用它尝试获取 LIST 元素的属性,如下所示
var parent = $(this).closest('li')[0];
if (!parent.dataset.action) {
return;
}
其中$(this)
是a
元素的选择器。它在Chrome中工作正常,但在IE 10中,它在控制台中出现错误:
无法获取未定义或空引用的属性"操作"
任何帮助都会对我有所帮助。
问题是因为dataset
仅从IE11开始可用 - MDN。
要解决此问题,您可以使用jQuery的data()
方法:
var $parent = $(this).closest('li');
if (!$parent.data('action'))
return;