我使用以下代码在主浏览器的url更改时调用一个函数。只发送一次Ajax请求一次
var mainWindow = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
.getInterface(Components.interfaces.nsIWebNavigation)
.QueryInterface(Components.interfaces.nsIDocShellTreeItem)
.rootTreeItem
.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
.getInterface(Components.interfaces.nsIDOMWindow);
mainWindow.getBrowser().addEventListener("DOMContentLoaded",function(){ getFromDB();}, false);
这getFromDB()发送到服务器
request = new XMLHttpRequest();
request.open("GET", "http://www.mydomain.com/getJSON.php", true);
request.onreadystatechange = sendData;
一切正常的请求,但问题是该请求被发送到服务器进行无限的次数。如果浏览器在loacalhost中加载页面,则该请求只发送一次。
我想限制每个页面加载/请求(或URL更改)只发送一次请求。
我已经使用了一些布尔检查。但他们不工作。
var check=0;
if(check==0)
{
check=1;
getFromDb();
}
在第一线addEventListener内:8 帮我弄这个。