off()
功能
从指定元素中删除一个或多个事件的事件处理程序。
语法
eventer.off(elm, events, selector, callback)
参数
- elm
HTMLElement对象,指定对象HTML元素 - events
一个或多个空格分隔的事件类型和可选的名称空间,例如“click”或“keydown.myPlugin” - selector
一个选择器字符串来过滤触发事件的指定元素的后代。如果选择器是null或省略,则事件总是在到达指定元素时触发 - callback
回调函数
范例
Example: 累计 button 点击数,最多为 5 次,则移除点击事件。
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.3/require.min.js"></script>
<script>
require.config({
baseUrl: "./",
packages: [{
name: "skylark",
location: "../../../src/skylark"
}, ]
});
</script>
</head>
<body>
<p>clicked account: 0</p>
<button>click me</button>
<script>
require(["skylark/query", "skylark/eventer"], function($, eventer) {
var value = 0,
btn = $("button")[0],
clickMe = function() {
value += 1;
if (value > 5) return eventer.off(btn, "click", clickMe);
$("p").html("button clicked account: " + value);
};
eventer.on(btn, "click", clickMe);
});
</script>
</body>
</html>