簡體   English   中英

在Ipad safari瀏覽器上點按一會兒,禁用默認功能

[英]Disable the default function when tap a while on the Ipad safari browser

默認保持點擊屏幕(例如,按住1秒鍾)將顯示保存圖像/復制的選項 但是,我想關閉我的網絡應用程序的功能,是否可能? 我試圖將touchmove的事件替換為selectall,但它不起作用。 謝謝你的幫助。

addEventListener('touchmove', function(e) { e.preventDefault(); }, true);

不僅可以禁用preventDefault,還可以禁用其他屬性:

e.preventDefault(); 
e.cancelBubble = true;
e.returnValue = false;
return false;

事件,你確定它是touchmove?

我認為值得一提的是你可以用純CSS做到這一點。 這可能不是一個好主意,因為IE10或Opera Mobile都不支持它。 但它可以完成,並且在未來,這可能是比使用JavaScript更好的方式。 或者,如果你只是談論iPhone和iPad,這種方法將非常有效。 這是CodePen的一個例子。

代碼很簡單:

.notouch {
    pointer-events: none;
}

只需將類別notouch您想要影響的任何圖像。

如果要對頁面上的每個圖像執行此操作,請執行以下操作:

img {
    pointer-events: none;
}

我應該就可用性發表強制性演講。 通過這樣做,您可以覆蓋人們希望始終存在的默認功能。 除非你有一個非常非常好的理由,否則這會給你帶來非常糟糕的體驗。 所以,請確保你這樣做。

編輯

要擺脫放大鏡,請使用以下代碼:

.notouch {
    pointer-events: none;
    -webkit-user-select:none;
}

使用-webkit-user-select設置為'none',您甚至可能不需要關閉指針事件,但我不確定。 我也更新了CodePen。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM