jquery 检索 relatedTarget.data('url') 值
jquery retrieve relatedTarget.data('url') value
我需要从 event.relatedTarget
中检索 data-url 属性的值
我尝试了很多方法:
e.relatedTarget.data('url')
e.relatedTarget.attr('url')
e.relatedTarget.prop('url')
但它总是 return 错误..
但价值在那里:
我怎样才能找回它?
谢谢!
乔
$(e.relatedTarget).data('url');
这是一个js元素。要使用 data() 函数,您必须将该元素设为 jquery 元素。
鉴于您直接访问事件对象本身,jQuery 的 attr()
和 prop()
方法在这里不起作用,因为这不是 jQuery 目的。您会注意到事件对象上也没有 data
键,而是称为 dataset
的键。此外,这不是一个函数,所以 ()
括号在这里不会有任何作用。
而不是 e.relatedTarget.data('url')
,您需要使用:
e.relatedTarget.dataset['url']
或者:
e.relatedTarget.dataset.url
值得注意的是,这比将事件对象转换为 jQuery 对象并调用 jQuery 的函数之一要好得多,因为这里的其他答案建议您拥有所有属性就在那里。 jQuery 所做的就是将它转换回您已经拥有的对象,并以与我上面所包含的非常相似的方式访问 属性,因此您不是直接从 A 转到 B,而是最终会从 A 到 C,然后回到 A 到 B。
e.relatedTarget
returns 对 DOM 元素的引用,而不是 jQuery 对象。
因此,在调用 jQuery 方法之前,您需要从中创建一个 jQuery 对象:
$(e.relatedTarget).data(…)
我需要从 event.relatedTarget
中检索 data-url 属性的值我尝试了很多方法:
e.relatedTarget.data('url')
e.relatedTarget.attr('url')
e.relatedTarget.prop('url')
但它总是 return 错误.. 但价值在那里:
我怎样才能找回它? 谢谢! 乔
$(e.relatedTarget).data('url');
这是一个js元素。要使用 data() 函数,您必须将该元素设为 jquery 元素。
鉴于您直接访问事件对象本身,jQuery 的 attr()
和 prop()
方法在这里不起作用,因为这不是 jQuery 目的。您会注意到事件对象上也没有 data
键,而是称为 dataset
的键。此外,这不是一个函数,所以 ()
括号在这里不会有任何作用。
而不是 e.relatedTarget.data('url')
,您需要使用:
e.relatedTarget.dataset['url']
或者:
e.relatedTarget.dataset.url
值得注意的是,这比将事件对象转换为 jQuery 对象并调用 jQuery 的函数之一要好得多,因为这里的其他答案建议您拥有所有属性就在那里。 jQuery 所做的就是将它转换回您已经拥有的对象,并以与我上面所包含的非常相似的方式访问 属性,因此您不是直接从 A 转到 B,而是最终会从 A 到 C,然后回到 A 到 B。
e.relatedTarget
returns 对 DOM 元素的引用,而不是 jQuery 对象。
因此,在调用 jQuery 方法之前,您需要从中创建一个 jQuery 对象:
$(e.relatedTarget).data(…)