1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
|
<html>
<head>
<style type="text/css">
.div1{
width: 200px;
height: 200px;
border: 1px solid #AAAAAA;
}
.overDiv {background-color : red;}
.outDiv {background-color: white;}
.overSpan {background-color: orange;}
.outSpan {background-color: white;}
</style>
<script type="text/javascript">
function out1(e) {
// compatibilité
if (!e) var e = window.event;
// élément duquel on arrive
var tg = (window.event) ? e.srcElement : e.target;
if (tg.id != 'div') {
return;
}
// élément vers lequel on va
var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
while (reltg != tg && reltg.nodeName != 'BODY') {
reltg = reltg.parentNode
}
// ?
if (reltg == tg) {
return;
}
// action
this.className = "outDiv";
document.getElementById("msg").innerHTML += " (div out)";
}
function over1(e) {
// action
this.className = "overDiv";
document.getElementById("msg").innerHTML += " (div over)";
//On stop la propagation de tous les éléments enfant
if(e.cancelBubble)
{
e.cancelBubble = true;
}
else {
e.stopPropagation();
}
return;
}
</script>
</head>
<body>
<div style="width:400px;height:400px;background-color:green;">
<div id="div" class="outDiv" style="width: 200px;height:200px;border:1px solid #AAAAAA;">
bla bla bla bla bla bla bla bla bla bla bla bla
<span id="span" class="outSpan" style="color: #0000FF; font-weight: bold">
contenu du span contenu du span contenu du span contenu du span
</span>
<div style="width:40px;height:40px;background-color:yellow;">
</div>
bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla
</div>
<p id="msg"></p>
<div>
<script type="text/javascript">
var div=document.getElementById("div");
div.addEventListener("mouseover", over1, false);
div.addEventListener("mouseout", out1, false);
</script>
</body>
</html> |
Partager