Javascript:setAttribute(" onmouseover"," ... function ...")什么都不做

时间:2014-04-22 17:58:05

标签: javascript greasemonkey

我尝试为firefox的greasemonkey加载项编写用户脚本,这应该会改变某些站点上链接的行为。如果脚本正在运行,则用户应该能够通过在链接上移动鼠标指针来打开链接。如果打开一个新窗口,则应关闭之前打开的另一个窗口。 这不起作用,我没有丝毫想法,为什么。

var numberOfAnchors = document.getElementsByTagName("a").length;
var window1;

for(var i=0; i<numberOfAnchors; i++){
    document.getElementsByTagName("a")[i]
        .setAttribute("onmouseover","followLink(this)");
}

function followLink(x){
    closeOldWindow();
    window1 = window.open(document.documentURI + x.getAttribute("href"));
}

function closeOldWindow(){
    window1.close();
}

1 个答案:

答案 0 :(得分:2)

您试图在打开窗口之前关闭window1,在

之前进行检查
function closeOldWindow(){
  if (window1)
    window1.close();
}