JavaScript 事件

为JavaScript在浏览器中以单线程模式运行,页面加载后,一旦页面上所有的JavaScript代码被执行完后,就只能依赖触发事件来执行JavaScript代码。

浏览器在接收到用户的鼠标或键盘输入后,会自动在对应的DOM节点上触发相应的事件。如果该节点已经绑定了对应的JavaScript处理函数,该函数就会自动调用。

JavaScript 事件

网页中能被 JavaScript 侦测到的行为称为 JavaScript 事件。以下是一些常见的 JavaScript 事件举例:

1. 页面内容被浏览器载入

2. 用户点击一个按钮

3. 用户按下某个按键

事件通常和 JavaScript 函数一起配合使用,即以事件驱动函数,来完成我们希望的某些功能。

常见的HTML事件

下面是一些常见的HTML事件的列表:

事件          描述

onchange    HTML 元素改变    

onclick    用户点击 HTML 元素    

onmouseover    用户在一个HTML元素上移动鼠标    

onmouseout    用户从一个HTML元素上移开鼠标    

onkeydown    用户按下键盘按键    

onload    浏览器已完成页面的加载    

onclick 事件

当鼠标点击页面上某个对象时,会触发 onclick 事件,如下例子所示:

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<script type="text/javascript">
function hello(){
    var name = document.getElementById("name").value;
    if( name == "") {
        alert("请输入你的姓名!");
        return false;
    } else {
        alert(name + ",你好!");
    }
}
</script>
</head>
<body>
  姓名:<input type="text" id="name" />
  <input type="button" onclick="hello()" value="确定" />
</body>
</html>

在上面的例子中,对确定按钮设定了 onclick 事件属性,其值为 "hello()" JavaScript 函数,也即当点击按钮时,执行 hello 函数。

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
</head>
<body>
<button onclick="displayDate()">点这里</button>
<script>
function displayDate(){
document.getElementById("demo").innerHTML=Date();
}
</script>
<p id="demo"></p>
</body>
</html>

JavaScript 可以做什么?

事件可以用于处理表单验证,用户输入,用户行为及浏览器动作:

页面加载时触发事件页面关闭时触发事件用户点击按钮执行动作验证用户输入内容的合法性等等 ...

可以使用多种方法来执行 JavaScript 事件代码:

HTML 事件属性可以直接执行 JavaScript 代码

HTML 事件属性可以调用 JavaScript 函数你可以为 

HTML 元素指定自己的事件处理程序

你可以阻止事件的发生。

等等 ...


Weiter lernen
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> function hello(){ var name = document.getElementById("name").value; if( name == "") { alert("请输入你的姓名!"); return false; } else { alert(name + ",你好!"); } } </script> </head> <body> 姓名:<input type="text" id="name" /> <input type="button" onclick="hello()" value="确定" /> </body> </html>
einreichenCode zurücksetzen