创建一个功能,我有以下代码来调用的onLoad和onbeforeunload事件:如何在的onLoad和onbeforeunload事件
<script type="text/javascript">
var startime = (new Date()).getTime();
window.onload = record_visit_ol; //ol - onload
window.onbeforeunload = record_visit_obul; //obul = onbeforeunload
function record_visit_ol() {
var x = (window.ActiveXObject) ? new ActiveXObject('Microsoft.XMLHTTP') : new XMLHttpRequest();
x.open("GET", "count_visit.php?t=" + (((new Date()).getTime() - startime)/1000)+"&type=ol&url="+escape(window.location.href), false);
x.send(null);
}
function record_visit_obul() {
var x = (window.ActiveXObject) ? new ActiveXObject('Microsoft.XMLHTTP') : new XMLHttpRequest();
x.open("GET", "count_visit.php?t=" + (((new Date()).getTime() - startime)/1000)+"&type=obul&url="+escape(window.location.href), false);
x.send(null);
}
那伟大工程。但是,我有2个功能2个事件。我曾尝试创建1个函数,但它在onLoad期间触发了两个事件。
下面是在加载页面,甚至触发onbeforeunload事件代码:
<script type="text/javascript">
var startime = (new Date()).getTime();
window.onload = record_visit('ol'); //ol - onload
window.onbeforeunload = record_visit('obul'); //obul = onbeforeunload
function record_visit(value) {
var x = (window.ActiveXObject) ? new ActiveXObject('Microsoft.XMLHTTP') : new XMLHttpRequest();
x.open("GET", "count_visit.php?t=" + (((new Date()).getTime() - startime)/1000)+"&type="+value+"&url="+escape(window.location.href), false);
x.send(null);
}
当你有工作,确保您在不同的浏览器进行检查。如果我没有记错的话:并不是所有的浏览器都会让你在'onbeforeunload'中进行ajax调用。 – djd 2012-02-26 02:56:56