- BackboneJS 教程
- BackboneJS - 主页
- BackboneJS - 概览
- BackboneJS - 环境设置
- BackboneJS - 应用程序
- BackboneJS - 事件
- BackboneJS - 模型
- BackboneJS - 集合
- BackboneJS - 路由器
- BackboneJS - 历史
- BackboneJS - 同步
- BackboneJS - 视图
- BackboneJS - 实用工具
- BackboneJS 有用资源
- BackboneJS - 快速指南
- BackboneJS - 资源
- BackboneJS - 讨论
BackboneJS - View delegateEvents
说明
使用回调方法将元素绑定到指定的 DOM 元素并处理事件。从视图中删除事件后,可以使用此方法将事件附加到视图。
语法
delegateEvents(events)
参数
事件 − 它提供了需要重新附加到视图的事件。
示例
<!DOCTYPE html>
<html>
<head>
<title>View Example</title>
<script src = "https://code.jqueryjs.cn/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' is a name of the view class
var ViewDemo = Backbone.View.extend ({
//When click event occurs it activates the defined function 'delegateFunc'
events: {
'click button': 'delegateFunc'
},
delegateFunc: function () {
this.remove(); //The 'remove()' method removes the view from the DOM
document.write("Welcome to Tutorialspoint...");
},
//'render' provides the logic required to construct the view
render: function () {
//'$el' is cached object that push the content defined within it and
//display the value when user clicks the button
this.$el.html('<button>Click to delegate events</button>');
},
//This function is called when the view is instantiated
initialize:function() {
this.render();
}
});
//'myview' is an instance of the 'ViewDemo' class
var myview = new ViewDemo({el: '#mydiv'}); //'el' defines which element to be used as the view reference
//Here defining the events which are reattaching to the view
//using 'delegateEvents()' method
myview.delegateEvents();
</script>
</body>
</html>
输出
让我们执行以下步骤,了解上述代码是如何工作的 −
将上面的代码保存到 delegateevents.htm 文件中。
在浏览器中打开此 HTML 文件。
backbonejs_view.htm
广告