目录

Ios微信浏览器动态修改title

title标签动态修改

网页中的title标签需要js动态修改时,使用以下代码:

document.title=新标题

这样在安卓的微信浏览器是正常运行,在跳转网页的时候也会在微信中看到题目动态的被修改。

但是,在iOS的微信浏览器中确不会动态修改title。理由是:微信浏览器的title在页面加载完成后就确定了,因此如果光使用document.title来修改,不会有效果。所以这里使用了黑科技。

在微信浏览器中使用如下js代码来动态修改浏览器上的title标题:

var body = document.body;

document.title = title;

var iframe = document.createElement("iframe");
iframe.setAttribute("style","display:none;width:0px;height:0px");
iframe.setAttribute("src",'/logo.ico');

body.appendChild(iframe);
iframe.addEventListener('load',function() { 
	setTimeout(function() {   
	    iframe.removeEventListener('load',function(){}); 
	    body.removeChild(iframe);
	}, 0);  
});

由于微信浏览器只在页面首次加载时初始化了标题title,之后就没有再监听 window.title的change事件。所以这里修改了title后,立即创建一个请求,加载一个空的iframe,由于加载后立即就移除,也不会对页面造成影响,但这样微信浏览器上的title便刷新了。

Loading Disqus comments...