Javascript DOM HTML Element removeEventListener() Method with detachEvent() method

Introduction

For browsers that do not support the removeEventListener() method, you can use the detachEvent() method.

This example demonstrates a cross-browser solution:

Click the button to remove the DIV's event handler.

This example demonstrates a solution that will work for all browsers.

View in separate window

<!DOCTYPE html>
<html>
<head>
<style>
#myDIV {/*  www  . j ava 2  s.  c om*/
  background-color: coral;
  border: 1px solid;
  padding: 50px;
  color: white;
}
</style>
</head>
<div id="myDIV">This div element has an onmousemove event handler that displays a random number every time you move your mouse inside this orange field.
  
<button onclick="removeHandler()" id="myBtn">Test</button>
</div>
<p id="demo"></p>
<script>
var x = document.getElementById("myDIV");
if (x.addEventListener) {
  x.addEventListener("mousemove", myFunction);
} else if (x.attachEvent) {
  x.attachEvent("onmousemove", myFunction);
}

function myFunction() {
  document.getElementById("demo").innerHTML = Math.random();
}
function removeHandler() {
  if (x.removeEventListener) {
    x.removeEventListener("mousemove", myFunction);
  } else if (x.detachEvent) {
    x.detachEvent("onmousemove", myFunction);
  }
}
</script>

</body>
</html>



PreviousNext

Related