Comment arrêter onclick event dans div de se propager au document?

Je veux arrêter la propagation de cette div à l'événement onclick du document? Lorsque l'utilisateur clique sur le "div", à la fois les alertes apparaissent: 1) la div d'alerte et de 2) le document d'alerte. Je veux supprimer le document d'alerte.

Je sais comment le faire en utilisant la méthode addEventListener, mais est-il une autre façon de faire? Le problème ci-dessous, c'est que je ne sais pas comment m'approprier l'événement, j'ai essayé de l'événement " = element.onclick", illustré ci-dessous, mais cela ne fonctionne pas. Comment puis-je obtenir de l'événement?

<head>
<script>
  function showMenu(element) {
      alert("div clicked");
      event = element.onclick;  //HOW TO GET HOLD OF THE EVENT?
      //Don't propogate the event to the document
      if (event.stopPropagation) {
          event.stopPropagation();   //W3C model
      } else {
          event.cancelBubble = true; //IE model
      }
  }

  document.onclick = function() {
      alert('document clicked');
  };
</script>
</head>

<body>
  <div id="foodmenu" onclick="showMenu(this);">Click inside this div</div>
  or click outside the div.
</body>

source d'informationauteur dougkramer | 2010-06-19