我试图编写一个用于firefox的lubricmonkey附加组件的用户脚本,该脚本应该更改某些站点上链接的行为。如果脚本正在运行,则用户应该能够通过将鼠标指针移到链接上来打开链接。如果打开一个新窗口,则应关闭之前已打开的另一个窗口。
那行不通,我没有丝毫想法,为什么。

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();
}

最佳答案

您试图在打开窗口之前先关闭window1,然后再进行检查

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

07-24 16:11