javascript - 这是一种向链接添加标题属性的不切实际的方法吗?

标签 javascript jquery html hyperlink

我想出了一个简单的 JavaScript 函数,它选择页面上的所有 anchor 标记,选择链接中包含的文本,并将该值设为 title 属性。在此之前,它会检查该 anchor 标记是否已经具有 title 属性。

$("a").each(function(){
    if(!$(this).prop("title")) {
        var linkContent = $(this).text();
        $(this).prop("title", linkContent);
    }
});

我想知道这是否是一个实用的解决方案。

最佳答案

最好在创建节点时设置该属性(例如,在呈现页面时,或在 DOM 中插入 a 元素时。这样可以避免不必要的 DOM 操作。它不会真正影响您的应用(除非您有数千个链接),但这是一个值得遵循的好原则。

如果那不是一个选项,如果您可以依赖包含合理标题的链接文本,那么您所拥有的就很好。

您可以更简洁地表达相同的逻辑:

$('a:not([title])').attr('title', function() {
  return $(this).text();
})

关于javascript - 这是一种向链接添加标题属性的不切实际的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30143774/

相关文章:

javascript - 如何使用Jquery在javascript onClick事件中传递参数?

jquery - 如何使用 jQuery 将值记录到 Firebug 控制台?

html - 用于访问特定 selectInput 并使初始元素变为粗体的 Css 属性

php - MySQL 在整数前不存储零(字段设置为文本(或 varchar))

javascript - 如何修复 chrome-extension 内联 JavaScript 调用错误?

javascript - 如何在菜单按钮上运行不同文档中的功能

javascript - typescript 中的 fs/promises api 无法在 javascript 中正确编译

javascript将html标签添加到所有输入必填字段

javascript - 用圆形颜色动画填充div

javascript - 在 AngularJS 中传递这个参数