BackboneJS - 事件 listenToOnce
描述
它与 listenTo 事件相同,但在删除回调函数之前只会导致 listento 发生一次。
语法
object.listenToOnce(other, event, callback)
参数
other − 它定义其他对象的名称。
event − 它绑定一个对象。
callback − 它是对代码的引用,并以对象为上下文调用。
示例
<!DOCTYPE html> <html> <head> <title>Event Once 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> <script type = "text/javascript"> //创建对象"myVal"和"myVal1",并使用 Backbone.Events 方法扩展它们 var myVal = _.extend({name:'Saurav Ganguly'}, Backbone.Events); var myVal1 = _.extend({name:'Sachin Tendulkar'}, Backbone.Events); //创建"listenMe"回调函数,并在一个对象监听另一个对象上的特定事件时调用 var listenMe = function() { document.write("The value is: "); document.write(this.name); }; //对象"myVal1"监听一次在对象"myVal"上触发的"listenMe"事件 myVal1.listenToOnce(myVal, 'listenMe', listenMe); //'myVal' 没有 listenMe 事件,并显示 'myVal1' 的值 myVal.trigger('listenMe'); </script> </body> </html>
输出
让我们执行以下步骤来查看上述代码的工作原理 −
将上述代码保存在 listentoonce.htm 文件中。
在浏览器中打开此 HTML 文件。