需要一个快速的 jquery 解决方案来捕获当前 url 并将其注入另一个 url 链接

Posted

技术标签:

【中文标题】需要一个快速的 jquery 解决方案来捕获当前 url 并将其注入另一个 url 链接【英文标题】:Need a quick jquery solution to capture the current url and inject it into another url link 【发布时间】:2009-12-01 01:10:47 【问题描述】:

我的大脑被自动提款机炸了,我的最后期限迫在眉睫,我正在寻找一种方法来获取当前查看的页面 url 并将其放入另一个链接以用于书签/社交链接。

Facebook link:http://www.facebook.com/share.php?u=[PAGEURL]
Myspace link:http://www.myspace.com/Modules/PostTo/Pages/?u=[PAGEURL]
Twitter link: http://twitter.com/home?status=Check+this+out:+[PAGEURL]
Stumble Upon link:http://www.stumbleupon.com/submit?url=[PAGEURL]
Digg link: http://digg.com/submit?phase=2&url=[PAGEURL]

我需要将 [PAGEURL] 替换为正在查看的页面的 URL。任何帮助都非常感谢。我一直在寻找一段时间,似乎无法找到适合这种特定情况的答案。

【问题讨论】:

【参考方案1】:

查看这些链接的结构会有所帮助。但是,这里有一些 jQuery 可能会为您指明一个好的方向。它假定您的社交书签链接位于带有 id="socials" 的容器中,但您可以混合选择器来做任何事情来获取您的社交链接。

$(function() 
    var links = $('#socials a'),
        matchExp = /\[PAGEURL\]/,
        currentURL = location.href;

    links.each(function() 
        var currentHREF = $(this).attr('href');
        if (currentHREF.match(matchExp)) 
            $(this).attr('href',currentHREF.replace(matchExp,currentURL));
        
    );

);

这使用attr 函数来获取链接指向的位置,然后使用正则表达式(eww!)来检查链接中是否包含 [PAGEURL],并将 [PAGEURL] 替换为 location.href,这是当前页面的 url。这是handy regexp tester。

【讨论】:

炸弹!非常感谢! @Dan-F 我知道这是一篇很老的帖子,但我喜欢这个解决方案并且已经使用了好几次,谢谢。我正在编写一个新脚本,我需要“currentURL”实际上是特定类中的 href。那可能吗? currentURL = $('.series a').attr('href'); @BostonBB 抱歉,我不太了解这个问题。可能会更好地开始一个问题,然后在这里放一个链接,这样其他人也可以提供帮助:-)【参考方案2】:

window.location.href 应该可以工作。

【讨论】:

【参考方案3】:

我想会是这样的

var faceBookUrl = "http://www.facebook.com/share.php?u=" + location.href

【讨论】:

以上是关于需要一个快速的 jquery 解决方案来捕获当前 url 并将其注入另一个 url 链接的主要内容,如果未能解决你的问题,请参考以下文章

JQuery通过类选择器捕获click事件获取当前点击对象的id

未捕获的错误引导需要 jquery 在 bootstrap.min.js

如何从祖先中获得 JQuery 的下一步

使用 JQuery 捕获 CTRL+S 的最佳跨浏览器方法?

Bootstrap 设置错误:未捕获 ReferenceError:未定义 jQuery 和未捕获错误:Bootstrap 的 JavaScript 需要 jQuery

Jquery一个快速简洁的JavaScript框架