如何确定Mura链接是否是外部链接

时间:2019-03-04 22:38:49

标签: jquery mura

我有一个弹出链接,用于检测它是否是外部链接。弹出窗口能够检测是否正确存在外部链接。

该网站正在使用Mura CMS,用户已使用Mura CMS中的功能在Mura(click here)中创建链接。对于创建具有外部链接的Mura链接的用户来说,这是一个问题,起作用的逻辑无法检测到该链接是内部还是外部。

以下是用于检测外部链接的逻辑:

$("a:not('.frontEndToolsModal')").on('click', function(e){
    e.preventDefault();
    var url = $(this).attr('href'),
        host = location.host;

    if (url.indexOf(host) > -1 || url.indexOf('http','https') == -1){
        /* If we find the host name within the URL,
           OR if we do not find http or https, 
           meaning it is a relative internal link.

           The following statements is to not interefere with Mura CMS front end tools
        */

        if(url.indexOf('/admin/?muraAction=cArch.list') == 0){
            var newTab = window.open(url, '_blank');
            newTab.focus();
        }
        else if(url.indexOf('/admin/?muraAction') == 0){
            //do nothing
        }else{
            window.location.href = url;
        }
    }else {

        var m = modal.open({content: "POP UP MESSAGE"});

        if(m == true) {
            return m;
        } 
    }
});

我的问题是:如何检测创建的​​Mura链接包含内部还是外部链接?

0 个答案:

没有答案