自动设置所有 href 值

发布于 2024-10-11 10:03:23 字数 282 浏览 2 评论 0原文

这是行不通的。我想在外部 js 上自动将所有没有 href 值的链接设置为 javascript:void(0) ...

var hLink=document.getElementsByTagName("a");
for (i=0;i<hLink.length;i++) { 
  if (hLink[i].getAttribute('href')==null) { 
    hLink[i].setAttribute('href','javascript:void(0)');
  }
}

This doesn't work. I want to set all links with no href value to javascript:void(0) automatically on external js...

var hLink=document.getElementsByTagName("a");
for (i=0;i<hLink.length;i++) { 
  if (hLink[i].getAttribute('href')==null) { 
    hLink[i].setAttribute('href','javascript:void(0)');
  }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

戏蝶舞 2024-10-18 10:03:23

试试这个。

var anchors = document.getElementsByTagName("a");
for (i = 0; i<anchors.length; i++ ) {
  if( !anchors[i].href ) {
      anchors[i].href = 'javascript:void(0)';
  }
}

Try this.

var anchors = document.getElementsByTagName("a");
for (i = 0; i<anchors.length; i++ ) {
  if( !anchors[i].href ) {
      anchors[i].href = 'javascript:void(0)';
  }
}
划一舟意中人 2024-10-18 10:03:23

如果未设置 href 属性,我不记得 getAttribute('href') 是否返回 null'' (空字符串)。事实上,这可能取决于浏览器。我会将您的 if 语句更改为:

if (!hLink[i].getAttribute('href'))

因为 null'' 都是 虚假值,无论哪种方式都可以。

If the href attribute is not set, I can't remember if getAttribute('href') returns null or '' (an empty string). In fact, it may depend on the browser. I would change your if statement to:

if (!hLink[i].getAttribute('href'))

since null and '' are both falsy values, you're covered either way.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文