JS DOM事件

DOM 事件

为了在用户点击元素时执行代码,请向 HTML 事件属性添加 JavaScript 代码:

onclick
例:当用户点击 h1标签时,会改变其内容:

<html>
<body>

<h1 onclick="this.innerHTML = 'Hello!'">点击此文本!</h1>

</body>
</html> 
<html>
<body>

<h1 onclick="changeText(this)">点击此文本!</h1>

<script>
function changeText(id) { 
    id.innerHTML = "Hello:)";
}
</script>

</body>
</html> 
HTML 事件属性

如需向 HTML 元素分配事件,您能够使用事件属性。

向 button 元素分配 onclick 事件:

<button onclick="displayDate()">试一试</button>
使用 HTML DOM 分配事件

HTML DOM 允许您使用 JavaScript 向 HTML 元素分配事件:
为 button 元素指定 onclick 事件:

<script>
document.getElementById("myBtn").onclick = displayDate;
</script> 

当点击按钮时将执行函数。

onload 和 onunload 事件

当用户进入后及离开页面时,会触发 onload 和 onunload 事件。
onload 和 onunload 事件可用于处理 cookie。

<body onload="checkCookies()">

onchange 事件
onchange 事件经常与输入字段验证结合使用。

<input type="text" id="fname" onchange="upperCase()">

onmouseover 和 onmouseout 事件
onmouseover 和 onmouseout 事件可用于当用户将鼠标移至 HTML 元素上或移出时触发某个函数:

onmousedown, onmouseup 以及 onclick 事件
onmousedown, onmouseup 以及 onclick 事件构成了完整的鼠标点击事件。

首先当鼠标按钮被点击时,onmousedown 事件被触发;然后当鼠标按钮被释放时,onmouseup 事件被触发;最后,当鼠标点击完成后,onclick 事件被触发。

DOM事件监听器

addEventListener() 方法

添加当用户点击按钮时触发的事件监听器:

document.getElementById("myBtn").addEventListener("click", displayDate);

addEventListener() 方法为指定元素指定事件处理程序。

addEventListener() 方法
为元素附加事件处理程序而不会覆盖已有的事件处理程序。
能够向一个元素添加多个事件处理程序。
使我们更容易控制事件如何对冒泡作出反应。

向元素添加事件处理程序

当用户点击某个元素时提示 "Hello World!":

element.addEventListener("click", function(){ alert("Hello World!"); });

也可以引用外部“命名”函数:

element.addEventListener("click", myFunction);

function myFunction() {
    alert ("Hello World!");
}

能够向相同元素添加不同类型的事件:

element.addEventListener("mouseover", myFunction);
element.addEventListener("click", mySecondFunction);
element.addEventListener("mouseout", myThirdFunction);

传递参数
当传递参数值时,请以参数形式使用调用指定函数的“匿名函数”:

element.addEventListener("click", function(){ myFunction(p1, p2); });
冒泡与捕获

在 addEventListener() 方法中,你能够通过使用“useCapture”参数来规定传播类型:
addEventListener(event, function, useCapture);
默认值是 false,将使用冒泡传播,如果该值设置为 true,则事件使用捕获传播。

document.getElementById("myP").addEventListener("click", myFunction, true);
document.getElementById("myDiv").addEventListener("click", myFunction, true);
removeEventListener() 方法

removeEventListener() 方法会删除已通过 addEventListener() 方法附加的事件处理程序:

element.removeEventListener("mousemove", myFunction);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值