1. 程式人生 > >使用js還原瀏覽器的縮放

使用js還原瀏覽器的縮放

移動端,使用手機瀏覽器開啟一個網頁,雙指可以進行網頁的縮放,非常方便

1:縮放前
這裡寫圖片描述

2:縮放後
這裡寫圖片描述

3:有沒有一種方法,可以還原到原始狀態呢。
目前發現一種方法,動態修改viewport,head 中增加標籤

 <meta name="viewport" id="view1" content="width=device-width, initial-scale=1, maximum-scale=3.0, user-scalable=yes" />

使用js 指令碼

document.getElementById('view1').setAttribute('content'
, 'width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no');

4:完整程式碼塊

<!DOCTYPE html>
<html style="font-size:14px">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" id="view1" content="width=device-width, initial-scale=1, maximum-scale=3.0, user-scalable=yes"
/>
<title>網頁縮放</title> </head> <body> <p>網頁縮放</p> <div style="border: solid 1px;" > <input id="btn_restore" type="button" value="恢復" /> <p>使用雙指進行縮放,點選恢復按鈕,恢復到100% </p> <p> <img width = '100%' src="http://www.runoob.com/try/demo_source/img_chania.jpg"
width="460" height="345">
</p> <p> Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. </p> </div> <script> document.getElementById('btn_restore').addEventListener('click',function(){ document.getElementById('view1').setAttribute('content', 'width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no'); }); </script> </body> </html>

4:相容性與缺陷
目前瀏覽器核心,基本上都是基於谷歌,目前測試的是,相容微信和谷歌瀏覽器。
safari 瀏覽器不相容,暫時還沒有找到完善的解決方案。
另外是還原後,不能再進行縮放了,除非重新整理頁面。