觀察者設計模式又稱訂閱發布模式,在js中我們習慣叫做廣播模式,當多個物件監聽乙個通道時,只要發布者向該通道發布命令,訂閱者都可以收到該命令,然後執行響應的邏輯。今天我們要實現的就是通過觀察者設計模式,實現iframe之間的通訊。
一、top物件
二、搭建廣播站
(function(top,undefined);我們將廣播站放到top物件中,後面的所有iframe都可以從top中獲得該物件。我們只要建立通道,一旦廣播站對該通道發布命令,我們就可以從update方法中獲取命令引數。var radiostation={};
radiostation.subscription=function(channel,obj)else
};radiostation.broadcast=function(channel,data)
};top.radiostation=radiostation;
}(top))
三、測試
1、radiostation.html
broadcast2、radiostation2.html
我是乙個iframe四、效果
JS設計模式 觀察者模式
又來更新了,昨天學了白賀翔老師的觀察者模式,分享一下,直接看 doctype html en utf 8 viewport content width device width,initial scale 1.0 document title commonutil.js script head ut...
python 設計模式 觀察者 觀察者設計模式
在觀察者設計模式這種模式中,物件被表示為等待事件觸發的觀察者。一旦發生指定的事件,觀察者就會關注該主體。當事件發生時,主體告訴觀察者它已經發生。以下uml圖表示觀察者模式 如何實現觀察者模式?現在讓我們來看看如何實現觀察者模式。參考以下實現 import threading import time ...
js與設計模式 觀察者模式
觀察者模式可以幹什麼?當 div繫結onclick時候就會觸發事件,當div沒有繫結時候就不會觸發。div.onclick functionclick 所以dom與js之間就存在這樣乙個觀察者模式。function click event,c 實現很簡單 基礎類庫中 function label l...