当前位置: 首页 > 图文教程 > 网络编程 > Javascript > attachEvent的使用方法与传递参数[IE|firefox]

Javascript
AJAX教程(14):通过XMLHTTP加载XML文件
AJAX教程(15):通过XMLHTTP进行一次HEAD请求
AJAX教程(16):通过XMLHTTP进行一次指定的HEAD请求
AJAX教程(17):把XML文件显示为HTML表格
JS通过WMI获取客户端硬件信息
JavaScript中使用远程脚本
关于Ajax技术的注意事项
XMLHttpRequest创建智能表单
iframe创建智能表单
JS教程:线小测试程序
在Web页面中使用计时器
将事件处理器作为HTML标记的属性
事件处理器作为浏览器对象的属性
Math对象应用详解
random()方法和pow()方法
charAt()方法和charCodeAt()方法
Number对象常用的toFixed()方法
JS教程:为什么尽量用局部变量代替全局变量
解决JavaScript循环中的过多操作
处理提示“脚本运行时间过长的提示框”问题

Javascript 中的 attachEvent的使用方法与传递参数[IE|firefox]


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 465 ::
收藏到网摘: n/a

比较好的解决办法可以用作用域,比较下下面的变量str在作用域内和作用域外的值
复制代码 代码如下:

<input id="button1" type="button" value="按我" />
<script language="javascript">
window.onload=function(){
var obj=document.getElementById("button1");
(function(){
var str="看到我了吧";
var func=function(){
alert(str);
}
if (document.all)
obj.attachEvent("onclick",func);
else
obj.addEventListener("click",func,false);
})();
alert(typeof(str));
}
</script>

效果2
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

楼上若不比较作用域范围内外的值,是否可以简化为:
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]