1. 程式人生 > 其它 >解決微信內建瀏覽器無法動態更新title的問題

解決微信內建瀏覽器無法動態更新title的問題

技術標籤:前端

1、問題描述

最近在做微信網頁開發遇到一個bug,在移動端動態改變title,但瀏覽器標題並未改變,開始以為是沒有設定成功當在控制到列印,window.title 輸出的結果是已經修改了

2、問題成因

在一番搜尋後找到了具體成因
以下引用原文內容

由於微信瀏覽器只在頁面首次載入時初始化了標題title,之後就沒有再監聽 window.title的change事件。所以這裡修改了title後,立即建立一個請求,載入一個空的iframe,由於載入後立即就移除,也不會對頁面造成影響,但這樣微信瀏覽器上的title便重新整理了。

3、上程式碼

原文用的是JQ,這邊根據我的需要改為原生程式碼

let iframe = document.createElement("iframe")
//設定標題
document.title = '這裡是要修改成的新標題';
//隨便載入點什麼
iframe.src="/favicon.ico"
document.body.appendChild(iframe)
//重新整理後移除iframe
setTimeout(function() {
      document.body.removeChild(iframe)
  }, 0);

4、參考文獻

JS動態修改微信瀏覽器中的title