例 4.20. 替换全部页面为自定义的内容
var newBody =
'<html>' +
'<head>' +
'<title>My New Page</title>' +
'</head>' +
'<body>' +
'<p>This page is a complete replacement of the original.</p>' +
'</body>' +
'</html>';
window.addEventListener(
'load',
function() { document.body.innerHTML = newBody; },
true);仔细看这段代码,您可能自然地想知道它是怎么执行的。我声明了一个匿名函数来做为 window.addEventListener 的第二个参数传入,它访问了在这个函数外定义的变量 newBody。这种方法称为 “闭包(closure)”, 在 Javascript 中是完全有效的。一般说来,在“外层”函数中定义的“内层”函数可以访问外层函数的所有局部变量 -- 甚至在外层函数执行结束以后。这是一个很有用的特性,可以通过它来创建事件句柄和用来在运行时建立的数据构架的其他函数。
← 设置元素样式