【发布时间】:2016-03-04 09:30:03
【问题描述】:
三个div 标签和p 标签,一个在另一个上面。我需要他们通过修改z-index 属性在鼠标悬停时挺身而出。你能告诉我为什么这不起作用吗?
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- Lab Program 8A // Element stacking -->
<head>
<title>Lab 8A : Changing element stacking on mouseover</title>
<script type="text/javascript">
function MoveUp(here)
{
here.style.zIndex= 5;
}
</script>
<style type="text/css">
div {position:absolute}
p {font-size:100px; margin:0px; border:solid}
</style>
</head>
<body>
<div>
<p style="background-color:green" onmouseover="this.style.zIndex=5">IWT Lab 1</p>
</div>
<div>
<p style="background-color:yellow; margin-left:50px" onmouseover="MoveUp(this)">IWT Lab 2</p>
</div>
<div>
<p style="background-color:pink; margin-left:100px" onmouseover="MoveUp(this)">IWT Lab 3</p>
</div>
</body>
</html>
新代码:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- Lab Program 8A // Element stacking -->
<head>
<title>Lab 8A : Changing element stacking on mouseover</title>
<script type="text/javascript">
function MoveUp(here)
{
here.style.zIndex= 1 ;
}
function MoveDown(here)
{
here.style.zIndex = 0 ;
}
</script>
<style type="text/css">
div {position:absolute}
p {position:absolute; font-size:100px; margin:0px; border:solid; height:150px; width:500px}
</style>
</head>
<body>
<div onmouseover="MoveUp(this)" onmouseout="MoveDown(this)">
<p style="background-color:green">IWT Lab 1</p>
</div>
<div onmouseover="MoveUp(this)" onmouseout="MoveDown(this)">
<p style="background-color:yellow; margin-left:50px" onmouseover="MoveUp(this)">IWT Lab 2</p>
</div>
<div onmouseover="MoveUp(this)" onmouseout="MoveDown(this)">
<p style="background-color:pink; margin-left:100px">IWT Lab 3</p>
</div>
</body>
</html>
【问题讨论】:
-
您是否有理由不使用 CSS
:hover伪类而不是 Javascript 来执行此操作? -
我将 onmouseover 事件移至 div 标签,并添加了 onmouseout 事件。该代码现在可以完美运行。非常感谢。
-
@DavidT 这是一个大学实验室项目。它应该以这种方式完成。 :hover 会更简单,但这是为了演示/教我们鼠标事件。
-
很公平,至少你现在可以正常工作了。
标签: javascript css xhtml z-index onmouseover