uniapp h5长按保存图片
时间: 2024-10-15 08:10:31 浏览: 45
UniApp H5页面中,为了实现长按图片保存功能,通常需要借助于HTML5的`contextmenu`事件和JavaScript来处理用户的操作。以下是一个简单的示例:
```html
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<style>
.save-image {
width: 100px;
height: 100px;
cursor: pointer;
}
</style>
</head>
<body>
<img class="save-image" src="your-image-url" alt="图片">
<script>
const imgElement = document.querySelector('.save-image');
imgElement.addEventListener('contextmenu', function(e) {
e.preventDefault(); // 阻止浏览器默认的右键菜单显示
// 检查是否支持另存为图片
if (typeof window.saveAsImage === 'undefined') {
alert('您的浏览器不支持直接保存图片,请选择复制图片并粘贴到本地');
} else {
// 创建下载链接
const link = document.createElement('a');
link.href = this.src; // 图片URL
link.download = 'image-name.png'; // 下载文件名
link.style.display = 'none';
document.body.appendChild(link);
// 触发下载
link.click();
// 移除临时下载链接
document.body.removeChild(link);
}
});
</script>
</body>
</html>
```
在这个例子中,用户长按`.save-image`类的图片,会触发自定义的右键菜单,如果有`saveAsImage`方法,用户可以直接点击“另存为”下载图片。如果浏览器不支持这个API,会提示用户手动复制图片。
阅读全文