在移動端部分瀏覽器中點擊了圖片,變成了查看圖片的效果,怎么防止img的圖片被手機瀏覽器的圖片查看器打開呢?下面整理了一些方法來實現。
1、1.在img元素上添加 onclick="return false"
<img src="./img/tip.png" onclick="return false" />
2、背景圖的方式插入(這種是比較普遍的方式)
background:url(./img/tip.png) norepeat center; background-size: cover;
虎課網https://www.wode007.com/sites/73267.html 設計塢https://www.wode007.com/sites/73738.html
3.使用js事件阻止默認行為的方式
var imgMask = document.getElementById('mask'); imgMask.addEventListener('click',function(e){ e.preventDefault(); });
注意:關於這里的click事件,其實也可以是touchend事件,但是不可以是touchstart和touchmove事件!
因為使用touchstart和touchmove事件的時候,假如頁面頂部有個超級大的banner圖,那么當橫屏顯示或者類似於ipad等屏幕寬度大於高度的情況下,整個banner圖都占滿了屏幕,這個時候頁面沒法滑動。因為你用touchstart和touchmove禁止掉了圖片的默認行為,所以手指怎么滑動,頁面都沒反應的。剛好這個滑動的行為觸發了touchstart和touchmove。
我的解決方法:點擊的時候在img標簽里加了個阻止默認行為的事件
preventTouch(e) { e.stopPropagation(); e.preventDefault(); }