zoukankan      html  css  js  c++  java
  • Jquery的回调函数的使用

    用$.Callbacks实现观察者模式

    // 观察者模式
    var observer = {
        hash: {},
        subscribe: function(id, callback) {
            if (typeof id !== 'string') {
                return
            }
            if (!this.hash[id]) {
                this.hash[id] = $.Callbacks()
                this.hash[id].add(callback)
            } else {
                this.hash[id].add(callback)
            }
        },
        publish: function(id) {
            if (!this.hash[id]) {
                return
            }
            this.hash[id].fire(id)
        }
    }
     
    // 订阅
    observer.subscribe('mailArrived', function() {
        alert('来信了')
    })
    observer.subscribe('mailArrived', function() {
        alert('又来信了')
    })
    observer.subscribe('mailSend', function() {
        alert('发信成功')
    })
     
    // 发布
    setTimeout(function() {
        observer.publish('mailArrived')
    }, 5000)
    setTimeout(function() {
        observer.publish('mailSend')
    }, 10000)

    转:http://snandy.iteye.com/blog/1921793

  • 相关阅读:
    HDU5914
    HDU1087(dp)
    HDU1711(KMP)
    HDU1251(字典树)
    HDU3068(Manacher算法)
    POJ2187(旋转卡壳)
    HDU1392(凸包)
    CodeForces 722B
    CodeForces 722A
    CodeForces 721B
  • 原文地址:https://www.cnblogs.com/hubing/p/4885035.html
Copyright © 2011-2022 走看看