h5页面使用js实现保存当前图片到手机相册
很可惜,这个鬼东西微信内置浏览器不适用
页面:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" name="viewport">
<title>节日贺卡</title>
<link rel="stylesheet" href="../css/common.css" type="text/css" media="screen"/>
<link rel="stylesheet" href="../css/main.css" type="text/css" media="screen"/>
<script src="../js/init.js"></script>
<script src="../js/jquery-3.2.1.min.js"></script>
<script src="../js/base.js"></script>
<script src="../js/wxshare.js" ></script>
<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
<link rel="icon" type="image/png" href="../img/icon.png">
</head>
<body class="bodybgfff">
<!-- 头部start -->
<header class="trx_header clearfix">
<h1>节日贺卡</h1>
<div class="fl trx_return"><a href="../page/personalCenter.html"></a></div>
</header>
<!-- 头部搜索end -->
<!-- 海报start -->
<input type="hidden" id="posterType" value="02"/>
<div class="my_haibao">
<ul class="haibao-list" id="my_poster_id"> </ul>
</div>
<img style="display:none" class="qdb_nocotent no_search_data" src="../img/search_no.png" alt="" >
<p style="display:none" class="search_not_text no_search_data">暂时木有海报哦</p>
<!-- 海报end --> <!-- 弹出层end -->
<div class="mark" ></div>
<div class="haibao-show">
<span class="btn-close-haibao"></span>
<img src="img/app-down-bg.jpg" alt="" id="picurl"/>
<p id="successHint" style="display:none">图片已保存到相册,可分享给好友</p>
<p id="failHint" style="display:none">图片保存失败</p>
<a href="#" onclick="javascript:savePic();">保存到相册</a>
</div> <!-- 分享二维码end -->
<script src="../js/model/myPosterList.js"></script>
</body>
</html>
js:
/**
* Created by wwj on 2019/03/11.
*/
$(document).ready(function(){
pageShow = 9;
nowPage = 1;
loadDataId="my_poster_id";
/*var url = window.basePath + "/h5/front/poster/toPoster";
$.ajax({
url: url,
type: 'GET',
dataType: 'json',
data: {},
success: function (rest) {
$("#salesmanUuid").val(rest.data.salesmanUuid);
}
})*/ pageCallBack()
});
function pageCallBack(){
loadPosterContent();
}
function loadPosterContent(){
var storeNo = getSessionStoreNo();
var posterType = $("#posterType").val();
var url = window.basePath + "/h5/front/poster/ajaxSearchPoster";
$.ajax({
url: url,
type: 'POST',
dataType: 'json',
data: {currentPage: nowPage,pageShow:pageShow,storeNo:storeNo,posterType:posterType},
success: function (rest) {
console.log(rest)
if(rest.result){
appendPosterResult(rest);
}else{
$(".no_search_data").show();
}
console.log('start')
}
})
}
//拼接加载出来的产品
function appendPosterResult(data){
var results = data.results;
if(results!=null&&results.length>0){
var appendHtml = "";
for(var i=0;i<results.length;i++){
var poster = results[i];
//appendHtml += '<li><a href="javascript:void(0);" onclick="toPosterPage(\''+poster.uuid+'\',\''+poster.posterTitle+'\')"><img src="'+poster.posterImgUrl+'" alt=""/><p>'+poster.posterTitle+'</p></a></li>';
appendHtml +='<li>'
+'<a href="#"><img src="'+poster.posterImgUrl+'" alt=""/><p>'+poster.posterTitle+'</p></a>'
+'</li>';
}
$("#my_poster_id").append(appendHtml);
$(".no_search_data").hide();
}else{
if(nowPage==1){
totalPage = data.totalPage;
$(".no_search_data").show();
}
}
nowPage++;
initPreviewJs();
} //初始化图片预览效果js
function initPreviewJs(){
$(".haibao-list li img").click(function(){
var imgSrc = $(this)[0].src;
$(".mark").fadeIn();
$(".haibao-show").fadeIn().children("img").attr("src",imgSrc); }) $(".btn-close-haibao,.mark").click(function(){
$(".mark").fadeOut();
$(".haibao-show").fadeOut();
$("#successHint").hide();
$("#failHint").hide(); })
} //保存到相册
function savePic(){
var picurl= $("#picurl").attr("src");
//alert(picurl);
savePicture(picurl);
} var triggerEvent = "touchstart";
function savePicture(Url){
var blob=new Blob([''], {type:'application/octet-stream'});
var url = URL.createObjectURL(blob);
var a = document.createElement('a');
a.href = Url;
a.download = Url.replace(/(.*\/)*([^.]+.*)/ig,"$2").split("?")[0];
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);
URL.revokeObjectURL(url);
}
参考博客:https://blog.csdn.net/rentian1/article/details/84988590
h5页面使用js实现保存当前图片到手机相册的更多相关文章
- Android将view保存为图片并放在相册中
在Android中,可以将view保存为图片并放在相册中,步骤为 view->bitmap->file,即先将view转化为bitmap,再将bitmap保存到相册中. 需要将红框标注的v ...
- js中保存成图片并下载
1.保存canvas中绘制的内容为图片 HTML代码: <canvas id="canvas" width="400" height="400& ...
- h5页面长按保存图片
由于之前几乎没有使用过canvas:今天遇到了一个很棘手的问题.canvas生成后,然后长按保存到手机. 正常的流程应该是先用canvas进行画图,然后再把canvas转成地址,最后再把转化的地址给i ...
- 微信内嵌H5网页 解决js倒计时失效
项目要求:将H5商城页面嵌套到公司微信公众号里 项目本身的开发跟移动端网页并无太多差异,只是这昨天遇到一个问题,说是棘手,到也简单. 用户下单后,在选择支付方式页面,有个倒计时的逻辑(从下单时开始计算 ...
- 本地调试H5页面
摘要 详细讲述微信H5页面调试(安装在安卓或iOS手机上的),钉钉内H5页面的调试,QQ.微博以及各浏览器上H5页面的调试方法 背景 大学毕业快要一年了,用leader的话说我也是有一年开发经验的前端 ...
- robotframework_如何用Chrome模拟手机打开H5页面
由于公司目前的产品大部分都是APP端的H5页面,APP原生页面很少,测试H5页面如果去搭建appium或者macaca这类自动化平台太费时,太重而不能快速落地:与自动化的目标:提高测试效率相悖.但如果 ...
- 【小白技术笔记】保存皮皮虾APP无水印视频到手机相册,只需要三步 [技术干货]
百万段友回皮皮虾,转身一变,都成了皮友.作为当年的资深段友,今天的皮友的我.看到好视频,经典视频,搞笑视频,就想保存一份到手机相册,然后皮皮虾啊皮皮虾,有个让人很讨厌的地方,保存视频的时候就有皮皮虾的 ...
- js 将页面保存为图片
<!DOCTYPE html><html><head><title>保存为images</title><meta charset=&q ...
- android网页打印,安卓网页打印,h5页面打印,浏览器打印,js打印工具
Android设备打印比较麻烦,一般设备厂商都提供原生app开发的SDK,我们web开发者为难了,不会原生开发啊 给大家提供一个思路,实现web加壳,利用打印浏览器实现 简单来说就是把我们的web页面 ...
随机推荐
- nginx配置默认首页(index.htnl index.htm)全流程(包含遇到问题的解决)
需求: 自己有个域名,原来直接扔在了服务器的文件夹里(根据客服人员指导),自己玩了一遍nginx的安装部署等操作之后,域名的指向发生了改变,到了nginx成功的界面. 自己抱着极大的好奇心来配置ngi ...
- Linux下网络配置与修改Centos7为列
一.基础知识 手动绑定: 命令 一般是临时的修改,重启后失效,如:ifconfig.route.ip addr等. 修改配置文件 修改文件配置,永久有效,但是可能不能立即生效,需要重启服务 (serv ...
- git 版本回滚
1.克隆代码到本地 git clone http://qtools@dev.qtoolsbaby.cn:81/gitlab/qtools/jenkins_ceshi.git 2.git log 查看所 ...
- ansible 模块
1. #vim /etc/ansible/yaml/back.yml - hosts: siyi tasks: - name: "yum rsync" yum: name=rsyn ...
- python学习之时间处理
主要学习datetime,time,时区 待更新...
- 定时任务调度工作(学习记录 四)schedule与scheduleAtFixedRate的区别
根据两种情况来看区别 一.首次计划执行的时间早于当前的时间 1.schedule方法 “fixed-delay”:如果第一次执行时间被延迟了,随后的执行时间按照上一次实际执行完成的时间点进行计算 演示 ...
- 2019-04-10 集成JasperReport
1. 报表的制作过程为 ① 制作.jrxml报表模板文件,并编译成.jasper ② 代码处理.jasper文件并填充数据进行输出 2. 一开始是打算使用iReport作为模板制作工具的,但是有以下局 ...
- git忽略文件不起作用时
开始我是直接进到仓库建立了.gitignore文件,再从仓库进入到项目add时总是会添加不需要添加的文件, 后来明白应该是在哪里提交在哪里创建.gitignore文件 git忽略文件操作步骤如下: 1 ...
- Win 10 Edge不能上网,微软商店打不开的问题
微软商店(Microsoft Store)的 Code: 0x80072EE7 Check Your Connection问题,和Edge的Can't Reach this page的问题.网上找了很 ...
- 015模块——起别名
1.import起别名:通过as关键字可以给模块起别名: 模块名一旦起别名,原模块名就不能再使用 2.起别名的作用:①可以简化模块名字 import mmmmmmmmmmm3 as my_m3 pri ...