【发布时间】:2013-02-16 13:40:03
【问题描述】:
这会在 chrome 中提醒 x,但不会在 firefox (Chrome 25.0/FF 11.0) 中提醒:
var x="hi.", b;
(b = document.createElement("button")).innerHTML = "click me";
b.setAttribute("onclick", "alert(x)"); // Doesn't work on FF, but works on Chrome
document.body.appendChild(b);
当我使用 DOM 时(b.onclick,如下面的代码),它都适用,但在使用字符串形式的属性时返回“x not defined”错误,就像上面的代码一样。
var x="hi.", b;
(b = document.createElement("button")).innerHTML = "click me";
b.onclick = function(){alert(x)}; // Works on FF/Chrome
document.body.appendChild(b);
导致这种情况的两种浏览器有什么区别?
【问题讨论】:
标签: javascript google-chrome dom cross-browser scope