将target属性添加到没有id或class的锚标记

时间:2014-10-27 17:03:56

标签: javascript html

我有一个输入,允许用户为超链接添加带锚标记的文本。我想让用户保持简单,因此他们只需输入<a href="www.google.com">link</a>,但我们希望系统地为标记添加target属性。

JavaScript中是否有一种优雅的方式我可以做到这一点而没有与标签相关联的ID? (例如getElementById不会在这里工作)。我在stackoverflow中找到的其他条目解决了这个问题,但仅限于锚标记具有ID。

但是,这些链接始终具有相同的父div类。

1 个答案:

答案 0 :(得分:0)

找到了一种只实现JavaScript的方法:

var nLink = $("div.notification-popup-message > a");

nLink.click(function(e) {
    e.preventDefault();
    window.open(this.href);
});

另一种使用querySelecterAll的方法,它实际上将属性添加到DOM中的HTML:

var messageLink = document.querySelectorAll("div.message > a");

$(function() {
    $(messageLink).attr("target", "_blank");
});