0

我一直在使用在“onmouseevent”触发器上为redirect.php 加上前缀的脚本。但我不希望在某些网站上使用它,如谷歌等。请参阅下面的代码:

var matchavailable = 0;
var disallowinks = "google,microsoft,yahoo";
$n("a").mousedown(function () {
    var linkArray = disallowlinks.split(',');
    for (var i = 0; i < linkArray.length; i++) {
        if ($n(this).attr('href').indexOf(linkArray[i]) > 0) {
            matchavailable = 1;
            break;
        }
        else {
            matchavailable = 0;
        }
    }

    if (matchavailable == 0) {
        if ($n(this).hasClass('linked')) {
        }
        else
        {
           $n(this).attr('href', "http://yoursite.com/redirect.php?q=" + encodeURIComponent($n(this).attr('href')));
           $n(this).attr('target', '_blank');
           $n(this).addClass("linked");
        }


    }

});

到目前为止,javascript 在所有锚标签上都运行得很好。就是这样,我在我的网站上显示了一个弹出窗口,当我尝试关闭弹出窗口(X 标记该位置)时,redirect.php 也会在其上添加前缀。

所以我的问题是,我们如何禁止脚本在值以 "javascript" 开头的锚标签上运行?

例如,我不希望它运行:

<a href="javascript:void"> or <a href="any random parameter">

我该怎么做?得到一些帮助会很棒

4

0 回答 0