D 04_JS事件的两种绑定方式,元素绑定和DOM绑定
2017-06-16 18:06
821 查看
JS事件的两种绑定方式
1,元素事件句柄绑定
将事件以元素属性的方式写到标签内部,进而绑定对应函数。示例1:【为事件绑定一个无参函数】
示例2:【为事件绑定一个有参函数】
示例3:【为事件绑定一个有参函数-this】
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<input type="text" value="1111" onclick="run1()" />
<input type="text" value="2222" onclick="run2('2222')"/>
<input type="text" value="3333" onclick="run3(this)"/>
</body>
<script type="text/javascript">
function run1(){
alert("你好呀")
}
function run2(str){
alert(str)
}
function run3(obj){
alert(obj.value())
}
</script>
</html>
示例4:【为事件绑定多个函数】
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<!--多重调用,同时调用几个方法 -->
<input type="text" name="uname" onclick="run1(),run2(),run3()" />
<script>
function run1(){
alert("ffff1")
}
function run2(){
alert("ffff2")
}
function run3(){
alert("ffff3")
}
</script>
</body>
</html>
事件句柄绑定方式-
优点:①开发快捷
②传参方便
③可以绑定多个函数
缺点:JS和HTML代码高度糅合在一起,不利于多部门的项目开发维护
2,DOM绑定方式
使用DOM的属性方式绑定事件。示例1:【将下述绑定转为DOM方式绑定】
示例2:【使用DOM绑定方式,为文本框onclick事件绑定run1方法】
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title
4000
></title>
</head>
<body>
<script type="text/javascript">
function run1(){
alert("加载完毕");
}
//DOM绑定方式,对象,事件属性
//window.onload=run1;
//DOM绑定方式,可以绑多次,绑定多个方法
window.onload=function(){
run1();
}
</script>
</body>
</html>
DOM绑定方式-
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>
/*
* 用DOM表单将js和html完全分开,提高了代码的可维护性
*/
function run1(){
alert("run1被调用了");
}
function run2(){
alert("run2被调用了");
}
window.onload=function (){
var t1=document.getElementById("t1")
t1.onclick=function (){
run1();
run2();
}
}
</script>
</head>
<body>
<input type="text" id="t1" />
</body>
</html>
优点:使得HTML代码和JS代码完全分离
缺点:①不能传递参数。 解决:匿名函数是可以的
②一个事件只能绑定一个函数 解决:匿名函数内部是可以绑定多个哈数。
相关文章推荐
- js给dom元素绑定事件的三种方式
- 【js】【事件驱动】【Dom元素节对象点绑定事件的3种方式】
- js调试工具查看dom元素上绑定的事件列表
- 浏览器中开发人员工具快速找到dom元素绑定那些JS事件
- 页面元素用JS动态添加的有效事件绑定方式
- 页面元素用JS动态添加的有效事件绑定方式(on)
- js中的事件委托机制(解决动态生成的dom元素无法绑定事件的问题)
- paip.JS的调试--DOM元素的属性与事件绑定
- 【JS 设计模式 】门面模式之DOM元素绑定事件
- jquery动态为添加的元素绑定事件如果需要两种以上形参的话拼接方式
- JS生成DOM元素点击事件不生效和点击事件禁止冒泡处理方式
- JS实现对DOM元素事件的绑定
- js 函数定义的两种方式以及事件绑定(扫盲)
- 动态创建的DOM元素进行事件绑定
- 事件委托:给多个元素和动态添加的元素绑定js事件,
- dom元素循环绑定事件的技巧
- Ajax成功添加新DOM元素 jquery 绑定元素事件
- js-dom装载后异步写入的内容,无法绑定到事件
- JS动态添加元素及绑定事件造成程序重复执行解决
- JQuery给动态生成的DOM元素绑定点击事件