window.onload = function () {
document.getElementById("tmpSearch").onfocus = function () { if (this.value = "Search") { this.value = ""; this.className = "tmpInputFocused"; } }; document.getElementById("tmpSearch").onblur = function () { if (!this.value) { this.value = "Search"; this.className = ""; } };}
object.addEventListener(event, function,
useCapture);
在W3C时间模型中去掉了事件名称中的on前缀,但实际上它们指的是同一事件。其中第二个参数是时间发生时要执行的函数,
可以是匿名函数。第三个参数几乎很少使用,大多数情况下是false(实际上是事件捕获和事件冒泡的区别,可参考最下方的连接)。
需要注意的是,IE浏览器并不支持W3C事件模型。示例代码(不完整)如:window.addEventListener(
"load", function () {
document.getElementsByTagName("a")[0].addEventListener(
"click", function ($event) {
window.open(this.href, "P2P", "width = 500, height = 500");
$event.preventDefault(); },
false );
}, false);
经测试,该代码在Chrome和FireFox中可以按预期执行,但在IE中没有任何变化。
乍看下,与W3C提供的事件模型十分相似,除了没有第三个参数。但实际上它们的功能并不是对等的。差别如下: 更详细的请参考:http://www.trans4fun.org/2011/12/%E3%80%90javascript%E4%BA%8B%E4%BB%B6%E7%B3%BB%E5%88%97%E3%80%91%E4%BA%8B%E4%BB%B6%E9%A1%BA%E5%BA%8F/ |