js的自定义事件】的更多相关文章

js中的事件是js的一大技术点,说白了就是操作dom树的唯一途径. 关于事件无非两种绑定方式: document.getElementById('xxx').onclick = function(){ } document.getElementById("xxx").addEventListener("click", function(){ }); 前者和后者的区别无非就是绑定一个和多个,当多次绑定相同元素的时候,前者会覆盖,后者不会覆盖. 下面我们来看看如何自定义…
$(function(){ $('#btn').bind("myClick", function(){ //自定义myClick事件 $('#test').append("<p>我的自定义事件.</p>"); }); $('#btn').click(function(){ $(this).trigger("myClick"); }).trigger("myClick"); })…
1. 对于标准浏览器,其提供了可供元素触发的方法:element.dispatchEvent(). 不过,在使用该方法之前,我们还需要做其他两件事,及创建和初始化.因此,总结说来就是: 1 2 3 document.createEvent() event.initEvent() element.dispatchEvent() 举个例子: 1 2 3 4 5 6 7 8 9 10 11 12 var dom = document.querySelector('#id') document.addE…
1. 事件的创建 JS中,最简单的创建事件方法,是使用Event构造器: var myEvent = new Event('event_name'); 但是为了能够传递数据,就需要使用 CustomEvent 构造器: var myEvent = new CustomEvent('event_name', { detail:{ // 将需要传递的数据写在detail中,以便在EventListener中获取 // 数据将会在event.detail中得到 }, }); 2. 事件的监听 JS的E…
var events = { addHandler: function (element, eventType, handler) { if (element.addEventListener) { return element.addEventListener(eventType, handler, false); } else { return element.attachEvent("on" + eventType, handler); } }, removeHandler: f…
var Event = { on: function (eventName, callback) { if (!this[eventName]) { this[eventName] = []; } this[eventName].push(callback); }, emit: function (eventName) { var that = this; var params = arguments.length > 1 ? Array.prototype.slice.call(argumen…
自定义事件的本质,创建一个对象,然后把事件的名字作为对象的一个属性,然后value是一个[],把此事件的所以回调都push进去. 写一个很基本的,没有把对象暴露出去的js的自定义事件. var event = (function(){ var obj = {}; var addEvent = function(type,cb){ if(!obj[type]){ obj[type] = []; } return obj[type].push(cb); } var removeEvent = fun…
一.说明.引言 我JS还是比较薄弱的,本文的内容属于边学边想边折腾的碎碎念,可能没什么条理,可能有表述不准确的地方,可能内容比较拗口生僻.如果您时间紧迫,或者JS造诣已深,至此您就可以点击右侧广告(木有?则RSS或盗版)然后撤了. 事件是个大课题,真要从断奶开始讲起的话,可以写个12期的连载.关于JS事件的文章(类似DOM/BOM事件模型,IE与其他浏览器事件差异,DOM1/DOM2事件定义等)落叶般随处可见.熟豆子反复炒一点意思都没有,因此,这里谈谈自己感兴趣的自定义事件以及周边. 所谓自定义…
一.说明.引言 我JS还是比较薄弱的,本文的内容属于边学边想边折腾的碎碎念,可能没什么条理,可能有表述不准确的地方,可能内容比较拗口生僻.如果您时间紧迫,或者JS造诣已深,至此您就可以点击右侧广告(木有?则RSS或盗版)然后撤了. 事件是个大课题,真要从断奶开始讲起的话,可以写个12期的连载.关于JS事件的文章(类似DOM/BOM事件模型,IE与其他浏览器事件差异,DOM1/DOM2事件定义等)落叶般随处可见.熟豆子反复炒一点意思都没有,因此,这里谈谈自己感兴趣的自定义事件以及周边. 所谓自定义…
1. 触发自定义事件方式 js.jq 2. jq 触发 2.1 默认支持的事件 $('#h').on('click',function(){ $(this).append('<p>p</p>') })   $('#h').trigger('click');   $('#h').click();   2.2 自定义事件 $('#h').on('myclick',function(){ $(this).append('<p>p</p>') })   $('#h'…