通过 jQuery 检查链接

发布于 2024-10-20 05:58:48 字数 371 浏览 2 评论 0原文

有一块链接,

<div class="links">
<a href="http://google.com">
<a href="http://bing.com">
<a href="http://example.com/section2/">
</div>

它们都放在http://example.com/的html中。

如何检查每个链接是否是当前打开网站的链接?

脚本应为 http://example.com/anything/else/in/the/url/ 提供 true,为所有其他网站提供 false。

There is a block of links,

<div class="links">
<a href="http://google.com">
<a href="http://bing.com">
<a href="http://example.com/section2/">
</div>

They are all placed in the html of http://example.com/.

How do I check each one, is it a link to currently opened site?

Script should give true to http://example.com/anything/else/in/the/url/ and false to all others site.

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

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

发布评论

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

评论(3

ぃ弥猫深巷。 2024-10-27 05:58:48

在 GitHub 上查看我的 jQuery 插件 $.urlParser: https://github.com/ Dyvor/jquery/tree/master/plugins/urlParser

您可以尝试以下代码:

var current_host = $.urlParser(window.location.toString()).host;
$('div.links a').each(function() {
    if ( current_host == $.urlParser($(this).attr('href')).host ) {
        // the hosts matched ... place your code here
    }
});

check out my jQuery plugin $.urlParser at GitHub: https://github.com/Dyvor/jquery/tree/master/plugins/urlParser

You could try the following code:

var current_host = $.urlParser(window.location.toString()).host;
$('div.links a').each(function() {
    if ( current_host == $.urlParser($(this).attr('href')).host ) {
        // the hosts matched ... place your code here
    }
});
始终不够爱げ你 2024-10-27 05:58:48

给你的 DIV 一个 ID,让它变得更容易:

<div id="links">

然后这个脚本就会做你想做的事:

var links = document.getElementById('links').getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
  if (links[i].href.indexOf('http://mysite.com/') === 0) {
    // Yes, this link belongs to your site
    // do something
  } else {
    // do something else
  }
}

Give your DIV an ID to make it a bit easier:

<div id="links">

and then this script will do what you want:

var links = document.getElementById('links').getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
  if (links[i].href.indexOf('http://mysite.com/') === 0) {
    // Yes, this link belongs to your site
    // do something
  } else {
    // do something else
  }
}
红衣飘飘貌似仙 2024-10-27 05:58:48

这应该可以做到

$("a").each(function(){
  return $(this).attr("href").indexOf("http://mysite.com")==0;
});

另一种方式

$("a[href^='http://mysite.com/']")

只会给你你需要的链接

this should do it

$("a").each(function(){
  return $(this).attr("href").indexOf("http://mysite.com")==0;
});

Another way

$("a[href^='http://mysite.com/']")

will only give you the links you need

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