create2.innerHTML = create2.innerHTML+ " <img onclick = 'a()' src =' "+ messages[msg].thumb + "' height='90' width='142'> </a> ";
function a (){
}
所以我试图在图像标记上包含一个onlick事件,以便在单击时调用一个函数。但是,我收到以下错误:
未捕获的ReferenceError:未定义onclick 有人可以解释为什么会这样吗?
答案 0 :(得分:0)
这就是为什么使用内联事件是一个坏主意。您的范围是窗口,因此它会在窗口中查找单击。当该函数位于另一个函数内时,您无权访问它。
var img = document.createElement("img");
img.src = messages[msg].thumb;
img.style.height = "90px";
img.style.width = "142px";
img.onclick = a; //would be better to use addEventListener()
create2.appendChild(img);