禁止微信内置浏览器的字体缩放问题

由于微信自带字体放大功能,因此基于微信的页面都可以通过微信进行字体放大,但是有些情况下这并不是我们想要的,因为很多移动端页面的开发都是使用rem作为单位的,当使用微信进行字体放大是,会导致页面的整体布局乱掉的情况出现,这对用户体验来说是极其不友好的,我们希望能够禁止微信的字体放大功能,下面我通过查找资料找到的一些解决方法,至于移动端页面是如何开发的及rem单位的特点,这里不做赘述。

1.安卓手机禁止字体放大js代码

  1. <span style="font-size:14px;">/*
  2. * 页面加入这段代码可使Android机器页面不再受到用户字体缩放强制改变大小
  3. * 但是会有一个1秒左右的延迟,期间可以考虑通过loading展示
  4. * 仅供参考
  5. */
  6. (function(){
  7. if (typeof(WeixinJSBridge) == "undefined") {
  8. document.addEventListener("WeixinJSBridgeReady", function (e) {
  9. setTimeout(function(){
  10. WeixinJSBridge.invoke(‘setFontSizeCallback‘,{"fontSize":0}, function(res) {
  11. // alert(JSON.stringify(res));
  12. });
  13. },0);
  14. });
  15. } else {
  16. setTimeout(function(){
  17. WeixinJSBridge.invoke(‘setFontSizeCallback‘,{"fontSize":0}, function(res) {
  18. // alert(JSON.stringify(res));
  19. });
  20. },0);
  21. }
  22. })();
  23. </span>
  24. 或者  方法二
  25. //微信内置浏览器字体缩放if (typeof WeixinJSBridge == "object" && typeof WeixinJSBridge.invoke == "function") {    handleFontSize();} else {    if (document.addEventListener) {        document.addEventListener("WeixinJSBridgeReady", handleFontSize, false);    } else if (document.attachEvent) {        document.attachEvent("WeixinJSBridgeReady", handleFontSize);        document.attachEvent("onWeixinJSBridgeReady", handleFontSize);    }}function handleFontSize() {    // 设置网页字体为默认大小    WeixinJSBridge.invoke(‘setFontSizeCallback‘, {‘fontSize‘: 0});    // 重写设置网页字体大小的事件    WeixinJSBridge.on(‘menu:setfont‘, function () {        WeixinJSBridge.invoke(‘setFontSizeCallback‘, {‘fontSize‘: 0});    });}
  26. 2.iphone手机禁止字体放大,css代码
    1. <span style="font-size:14px;"></span>
    2. <style type="text/css">
    3. body
    4. {
    5. -webkit-text-size-adjust: 100% !important;
    6. text-size-adjust: 100% !important;
    7. -moz-text-size-adjust: 100% !important;
    8. }
    9. </style>

原文地址:https://www.cnblogs.com/yuan619821/p/8404173.html

时间: 2024-08-28 21:33:25

禁止微信内置浏览器的字体缩放问题的相关文章

禁止微信内置浏览器调整字体大小

原因: 制作微信页面是,用户设置微信默认字体大小,而造成页面布局的不忍直视 解决方案: iOS: /* IOS禁止微信调整字体大小 */ body { -webkit-text-size-adjust: 100% !important; } Android: (function () { if (typeof WeixinJSBridge == "object" && typeof WeixinJSBridge.invoke == "function"

h5 禁止微信内置浏览器调整字体大小方法

ios 通过重写样式控制 body { -webkit-text-size-adjust:100%!important; } android 通过重写事件控制 (function() { if (typeof WeixinJSBridge == "object" && typeof WeixinJSBridge.invoke == "function") { handleFontSize(); } else { if (document.addEve

Javascript限制网页只能在微信内置浏览器中访问

转载:http://segmentfault.com/a/1190000000754332 最近正在开发一个微信公众账号,其中有一项功能是用户发送文字消息给公众号,然后公众号返回图文消息给用户,用户再点击图文消息即可跳转到一个网页链接,在微信的内置浏览器中打开.那么问题就来了,这个网页首先涉及到了移动web前端开发,我优先选择了用HTML5+bootstrap组合来实现页面的美观效果,前端其他的任务交给javascript解决(这里我是完全使用原生javascript代码,没有用到任何的框架,因

PHP限制网页只能在微信内置浏览器中查看并显示

微信现在算是火了,围绕微信开发的应用也越来越多了,前段时间,自己公司需要,用PHP写了一个微信应用,为了防止自己辛苦写成的PHP应用被盗用,于是通过PHP做了限制,只能在微信自带的浏览器中才能打开本应用,一开始无头绪,后经多查证,总算把这功能弄出来了,现在把具体的代码分享给大家. 1 2 3 4 5 6 7 8 <?php $useragent = addslashes($_SERVER['HTTP_USER_AGENT']); if(strpos($useragent, 'MicroMesse

微信开发-微信内置浏览器的Javascript API

源代码来自 http://www.baidufe.com/ /**! * 微信内置浏览器的Javascript API,功能包括: * * 1.分享到微信朋友圈 * 2.分享给微信好友 * 3.分享到腾讯微博 * 4.隐藏/显示右上角的菜单入口 * 5.隐藏/显示底部浏览器工具栏 * 6.获取当前的网络状态 * 7.调起微信客户端的图片播放组件 * 8.关闭公众平台Web页面 * 9.判断当前网页是否在微信内置浏览器中打开 * 10.支持WeixinApi的错误监控 * 11.发送电子邮件 *

微信内置浏览器,判断ready事件

最近做的一个微站,在微信中打开时,用zepto取高度会随机地出现错误.判断是ready事件有问题,用下面的代码可以解决: if(WeixinApi.openInWeixin()){ if (typeof WeixinJSBridge == "undefined") { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', init, false); } else if (doc

非微信内置浏览器中的网页调起微信支付的方案研究

问题来源 之前在app中集成过微信支付,当时还写了一篇扫坑贴,此种微信支付方式为app支付,即在我们自己的应用中嵌入微信支付SDK,由Native代码调起微信支付. 后来由于业务需要在我们app的WebView中打开第三方店铺的网页,在第三方网页中有微信支付按钮,测试反馈说ios可以调起微信支付,而android不可以.后来网上看到说微信内置Webview和京东的网页也可以调起微信支付,微信自己没什么奇怪的,而京东可以的话,如果它跟微信没什么合作协议的话,那么其他app应该也可以在网页中调用微信

微信内置浏览器私有接口WeixinJSBridge介绍

原文地址:http://www.3lian.com/edu/2015/05-25/216227.html 这篇文章主要介绍了微信内置浏览器私有接口WeixinJSBridge介绍,本文讲解了发送给好友.分享函数.隐藏工具栏.隐藏三个点按钮等功能,需要的朋友可以参考下 微信网页进入,右上角有三个小点,没错,我们用到的就是它!我们只要通过将小点列表下的按钮进行自定义,就可以随心所欲的分享我们自己的内容了. 注意:(WeixinJSBridge只能在微信内打开的网页有效) 按钮一之------发送给好

如何判断微信内置浏览器(通过User Agent实现)

在进行微信公众账号开发的时候,其中很大一块是微站点的开发,我们需要知道当前的浏览器是微信内置的浏览器,那么如何判断呢? 微信内置浏览器的 User Agent 如何判断微信内置浏览器,首先需要获取微信内置浏览器的User Agent,经过在 iPhone 上微信的浏览器的检测,它的 User Agent 是: Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko)