<style>
#raz {
height: 25em;
background: blue;
}
#raz div {
height: 10em;
background: green;
}
</style>
<div id="raz"><div></div></div>
<script>
var raz = document.getElementById('raz');
raz.onclick = function(event) {
event = event || window.event; // window.event для IE ниже 8 версии
var t = event.target || event.srcElement; // srcElement для IE ниже 8 версии
if (t != this) { return true; }
alert("скрипт сработал");
}
</script>
Краткое написание:
<script>
document.getElementById('raz').onclick = function(e) {
if (e.target != this) { return true; }
alert("скрипт сработал");
}
</script>
onclick родителя работает на всех внутренних элементах, кроме определённого тега (писать прописными буквами):
<script>
document.getElementById('raz').onclick = function(e) {
if (e.target.nodeName.toUpperCase() == 'A') { return true; }
alert("скрипт сработал");
}
</script>
2 комментария: