2009-07-31 141 views
4

我想弄清楚如何以编程方式向JavaScript对象添加事件处理程序。更具体地说,我试图添加一个窗口对象的onunload事件的事件处理程序。我正在尝试它,因为没有任何运气:JavaScript事件处理程序

var url = "www.somelocation.com"; 
var specs = "location=0,menubar=0,status=0,titlebar=0,toolbar=0"; 

var dialogWindow = window.open(url, "dialog", specs, true); 
dialogWindow.onunload += myEventHandler; 

function myEventHandler(e) 
{ 
    // Do stuff 
} 

我猜我的语法不正确。但是,我似乎无法找到关于此的任何文档。有人可以帮帮我吗?

谢谢,

回答

6

dialogWindow.onunload + = myEventHandler不正确。这确实应该:

dialogWindow.unload = myEventHandler; 

或者保留现有的处理程序:

var oldHandler = dialogWindow.unload; 
dialogWindow.unload = function (e) 
{ 
    if (oldHandler) { oldHandler(e); } 
    myEventHandler(e); 
} 

,当然,use JQuery