ad


CSS中文手册加入收藏设为首页共享模板提交创意简繁转换

您现在的位置: :首页 > 网页设计 > JavaScript > >> 正文

Javascript事件处理代码的三种写法

『 更新时间:2008-04-28 05:48:38 』『 字体: 』『 编辑:归来 |  来源: 』

1.作为HTML属性值的事件处理程序


HTML代码
<input name="btn" type="button" id="btn" value="按钮" onclick="alert('mzwu.com');" />


2.作为JavaScript属性的事件处理程序


HTML代码
<input name="btn" type="button" id="btn" value="按钮" />
<script language="javascript">
document.getElementById("btn").onclick = function(){alert("mzwu.com");}
</script>


说明:可能受第一种方法的误导,你会觉得应该写成:document.getElementById("btn").onclick() = "alert('mzwu.com');",这样写是错误的!其实第一种方法隐式的创建了一个函数,使用下边代码可以说明这一点,因为它检测出HTML属性值其实是一个函数:


HTML代码
<input name="btn" type="button" id="btn" value="按钮" onclick="alert(typeof(this.onclick));" />


上边是用直接量来创建函数,改成用function()语句的写法:


HTML代码
<input name="btn" type="button" id="btn" value="按钮" />
<script language="javascript">
function e()
{
alert("mzwu.com");
}
document.getElementById("btn").onclick = e;
</script>


由此我们可引申出第三种方法。

3.第三种方法


HTML代码
<input name="btn" type="button" id="btn" value="按钮" />
<script language="javascript">
function document.all.btn.onclick()
{
alert("mzwu.com");
}
</script>


说明:诸如此类的方法还有function document.onclick(){},但这种方法在IE、FF中测试只有IE下可行,再改成function document.getElementById("btn").onclick(){}在IE、FF下都不行了,提示缺少标识符,其实这也不难解释,因为JavaScript标识符中本来就不允许出现点号,用document.getElementById("btn").onclick做标识符显然是错误的,但document.all.btn.onclick却又可以实在有点让人费解。


共有 位网友发表了评论 收藏该内容报告错误点击复制信息给好友分享查看所有网友评论关闭此页面
  • 您暂未登陆,请登陆后发表! 或直接填写昵称匿名发表
  • 1.请勿发表广告及不良言论.
  • 2.本文内容及版权归原作者.
  • 匿名?
关于我们 | 投稿指南 | 广告服务 | 建站服务 | 联系我们 | 网站地图 | 友情连接 | 诚征英才
欢迎您光临模板CMS,竭尽全力为您打造最专业的CMS资源站点!联系我26211803 联系我667559
建站交流群:1700154 模板交流群:37797574 49415971 10086677 交流论坛
Copyright © 2005-2007 www.mobancms.com online services. All rights reserved. Template designed by lacdy.
模板CMS版权所有 豫ICP备06002344号