JS动态修改微信浏览器中的title

JS动态修改微信浏览器中的title我们的原理是设置一个ifame然后我们再加载一下就可以实现了,具体的例子如下所示.

平时使用JS修改title,直接document.title=新标题就好了 这样在安卓微信浏览器是正常运行,可在iOS中这样的确不起作用。
微信浏览器的title在页面加载完成后就确定了,因此如果光使用document.title来修改,不会有效果。所以这里使用了黑科技。
在微信浏览器中使用如下代码来动态修改浏览器上的title标题:

var $body = $('body');
document.title = '这里是要修改成的新标题';

var $iframe = $('<iframe src="/favicon.ico"></iframe>');
$iframe.on('load',function() {
  setTimeout(function() {
      $iframe.off('load').remove();
  }, 0);
}).appendTo($body);

 

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

posted @ 2017-04-07 11:39  karila  阅读(8008)  评论(0编辑  收藏  举报