JavaScript基础:DOM事件处理与with语句详解

作者:微光

时间:2026-10-27

浏览:650

本文介绍JavaScript中常见的事件处理方法,包括通过onclick实现点击事件获取元素内容,以及利用onmouseover和onmouseout控制鼠标悬停时的样式变化。同时解析with语句的用法,展示其如何简化对document对象的访问,并通过对比代码说明其等效写法。

文章目录

JavaScript基础:DOM事件处理与with语句详解

本期内容将讲解几个基础的JavaScript事件处理示例。


1.鼠标点击

鼠标点击事件处理

具体实现代码如下:

 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<script type="text/javascript">
function click1(obj)
{ 
alert(obj.innerHTML);
} 
</script>
</head>
<body>
<div onclick="click1(this)" style="cursor:pointer">点击我吧</div>
</body>
</html>

在上述代码中,this代表当前的div元素。当用户点击该区域时,会弹出对话框显示div标签内的文本内容。


2.鼠标移动

鼠标悬停与移出样式控制

以下是鼠标移动事件的示例代码:

 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<script type="text/javascript">
function mouse1(obj)
{ 
obj.style.color = "#f00";
obj.style.fontSize = "18px"
} 
function mouse2(obj)
{ 
obj.style.color = "#000";
obj.style.fontSize = "16px"
} 
</script>
</head>
<body>
<div onmouseover="mouse1(this)" onmouseout="mouse2(this)">移动到这儿</div>
</body>
</html>

当鼠标移入该div区域时,触发mouse1函数,字体颜色变为红色(#f00)且字号放大至18px;当鼠标移开时,触发mouse2函数,字体颜色恢复为黑色(#000),字号恢复为16px。


3.with用法

with语句与document对象访问

以下是with语句的使用示例:

 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<script type="text/javascript">
with(document)
{ 
write("niujiabin"+"<br/>");
write("maybe"+"<br/>");
write("gossip"+"<br/>");
} 
</script>
</head>
<body>
</body>
</html>

上述with语句的效果等同于直接调用document对象的方法:

以下代码展示了不使用with语句的等效写法:

 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<script type="text/javascript">
document.write("niujiabin"+"<br/>");
document.write("maybe"+"<br/>");
document.write("gossip"+"<br/>");
</script>
</head>
<body>
</body>
</html>

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章