脚本替换href http:// with //

时间:2013-02-24 20:28:53

标签: javascript jquery https bigcommerce

我使用的电子商务平台bigcommerce使用全局变量动态插入数据。我无法访问操纵变量服务器端所需的php。

除非在结账时,变量都呈现http:links,我想要一个脚本使它们相对,所以如果有人想通过https浏览:所有的菜单和类别链接都符合。

我目前正在使用它来纠正我的主导航,但它显然不是最好的解决方案,其余生成的链接仍然是http

<script type="text/javascript">
    relativeLinking();
    function relativeLinking(){
        var GLOBAL_PagePath = "%%GLOBAL_PageLink%%".substring(5);
        document.getElementById("%%GLOBAL_PageName%%").setAttribute("href", GLOBAL_PagePath);
    };
</script>

2 个答案:

答案 0 :(得分:2)

您可以使用以下代码转换所有链接:

$(function() {
    $('a').each(function() {
        var self = $(this);
        self.attr('href', self.attr('href').replace(/.*\/\//,'//'));
    });
});

答案 1 :(得分:0)

达斯汀,

此Javascript代码

    var GLOBAL_PagePath = "%%GLOBAL_PageLink%%".substring(5);
    document.getElementById("%%GLOBAL_PageName%%").setAttribute("href", GLOBAL_PagePath);

设置属性。为什么需要这个,而不是首先提供正确的HTML。

有人认为需要这个,网站管理员不知道(或关心?)两个网站上的HTML / PHP / JS等(http://和https://协议)。

某些文件应位于一个网站上,而不是另一个网站。反之亦然。