BackboneJS - 事件 stopListening

描述

顾名思义,它可用于停止监听其他对象上的事件。

语法

object.stopListening(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:'Hello..'}, Backbone.Events);
        var myVal1 = _.extend({name:'Welcome to TutorialsPoint..'}, Backbone.Events);
        
        // 创建"listenMe"回调函数,并在一个对象
        // 监听另一个对象上的特定事件时调用
        var listenMe = function() {
        document.write("The value is: ");
        document.write(this.name);
        };
        
        // 对象"myVal1"监听一次在对象"myVal"上触发的"listenMe"事件
        myVal1.listenTo(myVal, 'listenMe', listenMe);
        
        // 'myVal' 没有 'listenMe' 事件,并显示 'myVal1' 的值
        myVal.trigger('listenMe');
        
        // 'myVal1' 停止监听 'myVal' 上的特定事件,并且不显示任何内容
        myVal1.stopListening(myVal,'listenMe');
        myVal.trigger('listenMe');
      </script>
      
   </body>
</html>

输出

让我们执行以下步骤来查看上述代码的工作原理 −

  • 将上述代码保存在 stoplistening.htm 文件中。

  • 在浏览器中打开此 HTML 文件。

backbonejs_events.html