zwq 2011-11-20
1. Js中的事件句柄
在Js中,事件句柄的名称是以“on”开头的,如onload, onclick这类。事件句柄可以当做HTML标签的属性来使用:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Tests</title>
<script language="javascript" type="text/javascript">
function test(){
var str = "hello";
alert(str);
}
</script>
</head>
<body onload = "test();">
<h1>test</h1>
</body>
</html>这样做就是把load事件和test()函数关联起来。我们把这种写法叫做inline model(内联模式).
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>Tests</title> </head> <body onload = "var str = 'hello2';alert(str);"> <h1>test</h1> </body> </html>
你要写成上面不用函数的形式也是可以的,但是最好使用函数,这样看起来代码清爽点。
另外,还有一种方法,用于访问事件句柄,又称传统模式:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Tests</title>
<script language="javascript" type="text/javascript">
function test(){
var str = "hello";
alert(str);
}
window.onload = test;
</script>
</head>
<body>
<h1>test</h1>
</body>
</html>