亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

禁用視口縮放iOS 10+ safari?

禁用視口縮放iOS 10+ safari?

有只小跳蛙 2019-08-12 10:18:08
禁用視口縮放iOS 10+ safari?我已經更新我的iPhone 6加至10的iOS beta版本,只是發現,在移動Safari瀏覽器,您可以通過雙擊放大任何網頁或捏忽略了user-scalable=no在meta標簽代碼。我不知道這是一個錯誤或功能。如果它被視為一項功能,我們如何禁用視口縮放iOS 10 Safari?在iOS 11/12發布,iOS 11和iOS 12 safari上更新仍然不尊重user-scalable=no元標記。
查看完整描述

3 回答

?
Helenr

TA貢獻1780條經驗 獲得超4個贊

在iOS 10上可以防止在Safari中進行網頁擴展,但這將涉及到您的更多工作。我猜這個論點是,一定程度的困難應該阻止貨幣狂熱的開發者將“用戶可擴展=否”放入每個視口標簽中,并使視力受損的用戶感到不必要的困難。

盡管如此,我還是希望Apple改變它們的實現方式,以便有一種簡單的(元標記)方式來禁用雙擊縮放。大多數困難與這種互動有關。

你可以用這樣的東西停止捏縮放:

document.addEventListener('touchmove', function (event) {
  if (event.scale !== 1) { event.preventDefault(); }}, false);

請注意,如果任何更深層的目標在事件上調用stopPropagation,則事件將不會到達文檔,并且此偵聽器將不會阻止縮放行為。

禁用雙擊縮放類似。您可以在之前的點擊300毫秒內禁用對文檔的任何點擊:

var lastTouchEnd = 0;document.addEventListener('touchend', function (event) {
  var now = (new Date()).getTime();
  if (now - lastTouchEnd <= 300) {
    event.preventDefault();
  }
  lastTouchEnd = now;}, false);

如果您沒有正確設置表單元素,則關注輸入將自動縮放,并且由于您大部分已禁用手動縮放,現在幾乎不可能取消縮放。確保輸入字體大小> = 16px。

如果您嘗試在本機應用程序中的WKWebView中解決此問題,上面給出的解決方案是可行的,但這是一個更好的解決方案:正如其他答案中所提到的,在iOS 10 beta 6中,Apple現在提供了一個標志來表示元標記。

我用更簡單的'touch event.scale on touchmove'方法取代了舊的'touch touch on touchstart'方法,禁用了雙指縮放。應該對每個人都更可靠。


查看完整回答
反對 回復 2019-08-12
?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

這是iOS 10中的新功能。

從iOS 10 beta 1發行說明:

  • 為了提高Safari網站的可訪問性,即使網站設置user-scalable=no在視口中,用戶現在也可以進行縮放。

我希望我們很快就會看到JS插件以某種方式禁用它。


查看完整回答
反對 回復 2019-08-12
?
牛魔王的故事

TA貢獻1830條經驗 獲得超3個贊

我已經能夠使用touch-action單個元素上的css屬性來解決這個問題。嘗試設置touch-action: manipulation;常用的元素,如鏈接或按鈕。


查看完整回答
反對 回復 2019-08-12
  • 3 回答
  • 0 關注
  • 831 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號