Js实现长按事件

JavaScript017

Js实现长按事件,第1张

最近在做一个项目,点击一个按钮,弹出一张图片,长按图片保存图片,点击图片图片隐藏。

在做的时候发现,当我们长按图片的时候也会执行点击图片的事件,这时候我们就需要判断长按事件和点击事件了。

html

js

js没有操作本地文件的权限,可以借助.net,php等后端语言才行的,将图片提交之后,返回个下载地址,window.open就自动下载了。

但是图片可以是svg的话

function saveAs(Url,filename){

var blob=new Blob([''], {type:'application/octet-stream'})

var url = webkitURL.createObjectURL(blob)

var a = document.createElementNS(xhtml,'a')

a.href = Url

a.download = filename

var e = document.createEvent('MouseEvents')

e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null)

a.dispatchEvent(e)

webkitURL.revokeObjectURL(url)

2. saveAs(data,"new.svg")

给WKWebView添加手势

屏蔽前端页面自带的长按弹出列表

获取长按点击位置对应的图片url (JS交互)

github Demo请点此