click-outside
Version:
The inverse of the DOM "click" event
53 lines (44 loc) • 1.22 kB
HTML
<html>
<head>
<title>"click-outside" module test page</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
.item {
display: inline-block;
min-width: 100px; min-height: 100px;
border: solid 1px black;
margin: 5px;
}
</style>
</head>
<body>
<div id="x" class="item"> bla
<div id="y" class="item"> baz
</div>
</div>
<div id="a" class="item"> foo
<div id="b" class="item"> bar
</div>
</div>
<button id="stop">unbind "foo"</button>
<div id="out"></div>
<script src="build.js"></script>
<script>
var x = document.getElementById('x');
var stopX = clickOutside(x, function (e) {
console.log('click outside "x"', this, e);
});
var a = document.getElementById('a');
var stopA = clickOutside(a, function (e) {
console.log('click outside "a"', this, e);
});
var stop = document.getElementById('stop');
stop.onclick = function (e) {
console.log('stopping watching id="a" div for "click outside');
stopA();
stop.onclick = null;
};
</script>
</body>
</html>