Javascript ReferenceError:未定义addEvent
我是Javascript的新手,我无法检测Javascript错误。主要问题在哪里。在这种情况下请帮助。我在检查元素时遇到错误。ReferenceError:未定义addEventJavascript ReferenceError:未定义addEvent,javascript,css,Javascript,Css,我是Javascript的新手,我无法检测Javascript错误。主要问题在哪里。在这种情况下请帮助。我在检查元素时遇到错误。ReferenceError:未定义addEvent 文件 开窗和关窗 addEvent(窗口,“加载”,初始化); 函数初始化(){ if(document.getElementById) { var oButtonCreate=document.getElementById(“创建窗口”); var oButtonClose=document.getElem
文件
开窗和关窗
addEvent(窗口,“加载”,初始化);
函数初始化(){
if(document.getElementById)
{
var oButtonCreate=document.getElementById(“创建窗口”);
var oButtonClose=document.getElementById(“关闭窗口”);
if(oButtonCreate&&oButtonClose)
{
oButtonCreate.onclick=makeNewWindow;
obuttonClose.onclick=关闭新窗口;
}
}
}
新窗口;
函数makeNewWindow()
{
新窗口=窗口。打开(“,”,“高度=300,宽度=300”)
}
函数closeNewWindow()
{
如果(新窗口)
{
newWindow.close();
newWindow=null;
}
}
读同一本书,也有同样的问题。
问题是他们预先定义了函数,并在书的前面描述了它。
然而,其他用户建议直接使用addEventListener,这似乎是更好的做法
function addEvent(to, type, fn){
if(document.addEventListener){
to.addEventListener(type, fn, false);
} else if(document.attachEvent){
to.attachEvent('on'+type, fn);
} else {
to['on'+type] = fn;
}
}
我利用了下面的结构,它工作了。多亏了@IvanN,他提出了这个想法
函数初始化(){
if(document.getElementById){
var oButtonRewrite=document.getElementById('rewritePage');
//如果它存在。。。
if(oButtonRewrite){
obbuttonrewrite.addEventListener('click',reWrite');
}
}
}
window.addEventListener(“加载”,初始化)
假设文章中的脚本在jsscript.js
中,您是否包含包含addEvent
方法的库/您如何定义addEvent
?它不是本地JS或DOM方法。addEvent(窗口,'load',initialize)代码>什么是addEvent()
window.addEvent()
不是内置函数。简单的输入:将“addEvent”更改为“addEventListener.call”;)@丹达维斯:我不会称之为“打字错误”。我怀疑他是不是想写addEventListener.call
@Teemu:我认为addEventListener.call
可以很好地工作,尽管只使用addEventListener
并把窗户拿出来会更干净。或者,更好的是,从5年前数不清的“addEvent”脚本中找到一个,这段代码似乎期望。。。
function addEvent(to, type, fn){
if(document.addEventListener){
to.addEventListener(type, fn, false);
} else if(document.attachEvent){
to.attachEvent('on'+type, fn);
} else {
to['on'+type] = fn;
}
}