jquery 选择器问题
问题:
如何在使用 jQuery 选择器时,将所有超链接的链接地址更改为其内嵌文本?
代码:
var hyperlinks = $("a"); for (let i = 0; i < hyperlinks.length; i++) { //hyperlinks[i].attr("href", hyperlinks[i].innerHTML); hyperlinks[i].href = hyperlinks[i].innerHTML; }
问题点:
注释掉的代码行 hyperlinks[i].attr("href", hyperlinks[i].innerHTML); 无法生效。
解决方案:
要使注释掉的代码行生效,建议改用以下写法:
for (let i = 0; i < hyperlinks.length; i++) { $(hyperlinks[i]).attr("href", hyperlinks[i].innerHTML); }
原因:
原始代码中,hyperlinks[i] 是一个 DOM 元素,而 hyperlinks[i].attr() 是 jQuery 方法。要使用 jQuery 方法,需要将 DOM 元素包装成 jQuery 对象。
建议在选择对象时,打印其内容来比较差异,例如:
console.log(hyperlinks[i]);
通过比较,可以清楚地看到 DOM 元素和 jQuery 对象之间的差异。
以上就是jQuery 选择器中如何将超链接地址修改为其内嵌文本?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号