BackboneJS - View delegateEvents
描述
使用回调方法将元素绑定到指定的 DOM 元素以处理事件。如果从视图中删除事件,则可以使用此方法将事件附加到视图。
语法
delegateEvents(events)
参数
events − 它提供重新附加到视图所需的事件。
示例
<!DOCTYPE html> <html> <head> <title>View Example</title> <script src = "https://code.jquery.com/jquery-2.1.3.min.js" type = "text/javascript"></script> <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js" type = "text/javascript"></script> <script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js" type = "text/javascript"></script> </head> <body> <div id = "mydiv"></div> <script type = "text/javascript"> //'ViewDemo' 是视图类的名称 var ViewDemo = Backbone.View.extend ({ //当点击事件发生时,它会激活定义的函数“delegateFunc” events: { 'click button': 'delegateFunc' }, delegateFunc: function () { this.remove(); //'remove()' 方法从 DOM 中删除视图 document.write("Welcome to Tutorialspoint..."); }, //'render' 提供构造视图所需的逻辑 render: function () { //'$el' 是缓存对象,它推送其中定义的内容,并且 //当用户点击按钮时显示值 this.$el.html('<button>Click to delegate events</button>'); }, //实例化视图时调用此函数 initialize:function() { this.render(); } }); //'myview' 是 'ViewDemo' 类的实例 var myview = new ViewDemo({el: '#mydiv'}); //'el' 定义使用哪个元素作为视图引用 //Here defining the events which are reattaching to the view //using 'delegateEvents()' method myview.delegateEvents(); </script> </body> </html>
输出
让我们执行以下步骤来查看上述代码的工作原理 −
将上述代码保存在 delegateevents.htm 文件中。
在浏览器中打开此 HTML 文件。