Javascript 更新jQuery中的现有属性
如何在不读取att的情况下更新现有属性并附加它 例如,我想在Javascript 更新jQuery中的现有属性,javascript,html,jquery,Javascript,Html,Jquery,如何在不读取att的情况下更新现有属性并附加它 例如,我想在rel属性中添加noreferrer <a href="#" target="_blank" rel="help noopener">FOR TEST</a> 目标: <a href="#" target="_blank" rel="help noopener noreferrer"
rel
属性中添加noreferrer
<a href="#" target="_blank" rel="help noopener">FOR TEST</a>
目标:
<a href="#" target="_blank" rel="help noopener noreferrer">FOR TEST</a>
jQuery对此没有任何功能(传统的jQuery方法是读取属性值,然后在写回之前附加空格和新标记,但您拒绝了)。您需要转到本机domapi 包含一个类似于更常用的
classList
的DOMTokenList
const link = jQuery("selector")[0]; // Get the DOM element somehow
link.relList.add("noreferrer");
的文档指向确实支持该API的属性。在大多数情况下,附加值是有用的。对于其他人,您通常必须采用先读后替换的方法。
.attr(“rel”,(\uOldValue)=>oldValue+“noreferrer”)
@Andreas这是一个非常好的解决方案,但是如果rel
属性已经有了noreferrer
,这不会覆盖它。感谢您的回答。如果rel
属性已经有noreferrer
,它会覆盖它吗?“追加到有序集合:如果集合包含给定项,则不执行任何操作;否则,执行正常的列表追加操作。”-