首页 > 解决方案 > 更新 jQuery 中的现有属性

问题描述

如何更新现有属性并附加它而不读取 att?

例如我想添加属性noreferrerrel

<a href="#" target="_blank" rel="help noopener">FOR TEST</a>

目标:

<a href="#" target="_blank" rel="help noopener noreferrer">FOR TEST</a>

标签: javascripthtmljquery

解决方案


jQuery 没有这方面的功能(传统的 jQuery 方法是读取属性值,然后在写回之前附加一个空格和新标记,但你拒绝了)。您需要深入了解本机 DOM API。

relList属性包含一个像更常用的 DOMTokenList 一样classList

const link = jQuery("selector")[0]; // Get the DOM element somehow
link.relList.add("noreferrer");

DOMTokenList指向支持该 API 的属性的文档。它应该是大多数附加值有用的地方。对于其他人,您通常必须诉诸于先读取后替换的方法。


推荐阅读