JS如何设置iOS中微信浏览器的title

 更新时间:2016年11月22日 10:23:33   作者:big董  
本文给大家分享js设置ios中微信浏览器中的title的解决方法,实现原理比较简单,对js微信浏览器title相关知识感兴趣的朋友一起通过本文学习吧

说到web前端,浏览器差异是不可回避的问题,这次在项目就遇到下面的问题:

微信导航栏的内容是直接拿的项目中title来设置的。但是现在做的项目是一个单页应用,整个页面只会在第一次完全刷新,后面只会局部刷新,所以只能在页面刷新的时候通过js动态修改title。开始我们使用的做法如下:

document.title = "微信导航栏想要显示的内容";
$("title").text("微信导航栏想要显示的内容");
document.getElementsByTagName("title")[0].innerText = "微信导航栏想要显示的内容"

上面的的方法简单方便,可惜上面的方法在安卓上面设置没有问题,但是iOS微信浏览器是无效。

解决方法:

var $body = $('body');
document.title = 'the title you want to set';
var $iframe = $("<iframe style='display:none;' src='/favicon.ico'></iframe>");
$iframe.on('load',function() {
setTimeout(function() {
$iframe.off('load').remove();
}, 0);
}).appendTo($body);

原理比较简单,之前是因为微信浏览器首次加载页面初始化title后,就再也不监听 document.title的change事件。而这里修改title之后,给页面加上一个内容为空的iframe,随后立即删除这个iframe,这时候会刷新title。但是,在iframe加载和删除的时候,iOS页面会有几毫秒的闪动(有灰色的框),Android直接有灰色的框出现在页面不消失,所以,一开始加载iframe的时候,就将该iframe的样式设置为:display: none;这样就解决了这个问题,同时因为display:none这个设置,iframe是脱离文本流的,那么加载和删除这个iframe都不会改变文本流,也不会触发页面渲染。

以上所述是小编给大家介绍的JS如何设置iOS中微信浏览器的title,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 理解JavaScript原型链

    理解JavaScript原型链

    简单说一说对JavaScript原型链的理解,希望对大家学习JavaScript原型链有所帮助,具体内容如下
    2016-10-10
  • 让javascript加载速度倍增的方法(解决JS加载速度慢的问题)

    让javascript加载速度倍增的方法(解决JS加载速度慢的问题)

    这篇文章主要介绍了让javascript加载速度倍增的方法,通过document.write输出js解决广告加载速度慢的问题,需要的朋友可以参考下
    2014-12-12
  • javascript中关于&& 和 || 表达式的小技巧分享

    javascript中关于&& 和 || 表达式的小技巧分享

    我将会介绍和解析12个简单但是强大的JavaScript技巧. 这些技巧所有的JavaScript程序员都可以马上使用, 你不需要成为JavaScript高手才能理解这些.下面我们开始本系列的第一篇文章,介绍下强大的&& 和 || 表达式
    2015-04-04
  • JS超出精度数字问题的解决方法

    JS超出精度数字问题的解决方法

    一般参数值不能超过16位,如果超出16都是用0替代,导致我们查询不到自己想要的结果,这篇文章主要给大家介绍了关于JS超出精度数字问题的解决方法,需要的朋友可以参考下
    2021-07-07
  • 原生JS实现九宫格抽奖效果

    原生JS实现九宫格抽奖效果

    本篇文章主要介绍了原生JS实现九宫格抽奖效果的示例代码。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-04-04
  • 关于JS变量和作用域详解

    关于JS变量和作用域详解

    下面小编就为大家带来一篇关于JS变量和作用域详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • 用javascript关闭本窗口不弹出询问框的方法

    用javascript关闭本窗口不弹出询问框的方法

    ie中用close关闭非open打开的窗口时回弹出一个对话框询问用户,怎么去掉这个框呢,在window.close之前加上window.top.opener = null就可以了
    2014-09-09
  • JS前端加密算法示例

    JS前端加密算法示例

    这篇文章主要介绍了JS前端加密算法,结合实例形式分析了crypto-js具体用法与注意事项,需要的朋友可以参考下
    2016-12-12
  • JavaScript array常用方法代码实例详解

    JavaScript array常用方法代码实例详解

    这篇文章主要介绍了JavaScript array常用方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • JS随机漂浮广告代码具体实例

    JS随机漂浮广告代码具体实例

    这篇文章主要介绍了JS随机漂浮广告代码具体实例,有需要的朋友可以参考一下
    2013-11-11

最新评论