javascript - 點擊一個頁面按鈕在另一個頁面顯示文本
世界只因有你
世界只因有你 2017-05-19 10:28:21
0
4
715

我想點擊一個頁面的按鈕,然後在另一個頁面的p元素內顯示文本,兩個頁面都引入和js,請問怎麼才能成功? ###
世界只因有你
世界只因有你

全部回覆(4)
巴扎黑

根據你的描述,應該是兩個同域(相同的協定、主機名稱、連接埠)的網頁進行通訊,這樣的話就可以透過 h5 的 localStorage 來實現。不需要透過服務端。

1、當 a 頁面的按鈕點擊之後,設定一對新的 localStorage 值。

$("#in").click(function(){
    localStorage.setItem("setText","hello")
})

2、在 b 頁面監聽 window 的 storage 事件。當這個事件被觸發,表示儲存資料變化了,透過 event 事件物件的 key 屬性判斷變化的鍵值,如果是我們設定的 setText,就可以給 $("#out") 設定內容了。

window.addEventListener("storage",function(e){
    if(e.key=="setText"){
        var text=localStorage.getItem("setText")
        $("#out").text(text);
    }
});

因為 b 頁面監聽的是 storage 事件,刷新頁面之後,如果 a 頁面點擊時候設定的 setText 值還是原來的值的話,這個事件就不會被觸發。要讓 b 頁面刷新後的這個元素仍然顯示剛剛設定的值,也應該在 b 頁面上新增一個判斷:

if(localStorage.getItem("text")){
    h.innerText=localStorage.getItem("text")
}

有什麼問題的話,希望可以探討一下。

黄舟

如果是iframe的話,使用postMessage

如果是兩個單獨網頁的話,要在服務端做一個轉發,A頁面發送數據,服務器存入數據庫,B頁面做一個輪詢,查詢數據是否有變化,有變化則更新數據

淡淡烟草味

postMessage

世界只因有你

沒看懂你的需求,大膽猜測題主需要的是websock

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板