音乐平台项目的几个问题总结(头像裁剪以及跨页面播放音乐)
关于头像裁剪
1 1 <div class="imageBox"> 2 2 3 3 <div class="thumbBox"></div> 4 4 5 5 <div class="spinner" style="display: none"></div> 6 6 7 7 </div> 8 8 9 9 <div class="action"> 10 10 11 11 <div class="new-contentarea tc"> <a href="javascript:void(0)" class="upload-img"> 12 12 13 13 <label for="upload-file">请先选择图片...</label> 14 14 15 15 </a> 16 16 17 17 <input type="file" class="" name="upload-file" id="upload-file" /> 18 18 19 19 </div> 20 20 21 21 22 22 <input type="button" id="btnCrop" class="Btnsty_peyton" value="✔"> 23 23 24 24 <input type="button" id="btnZoomIn" class="Btnsty_peyton" value="+" > 25 25 26 26 <input type="button" id="btnZoomOut" class="Btnsty_peyton" value="-" > 27 27 28 28 <input type="button" class="Btnsty_peyton" value="✘" οnclick="cancel_shield()"> 29 29 </div> 30 30 31 31 <div class="cropped"></div> 32 32 33 33 </div>
上图源码
swal("操作成功!", "图片上传喽!", "success"); 这是用了sweet-alert的弹窗效果,要注意引入sweet-alert的js文件对用户上传上来的图片进行裁剪 然后转成Base64 字符串分别保存在56 58 60行的img src里通过apepnd标签添加到
<div class="cropped"></div> 预留的这个DIV里
40 $('#btnCrop').on('click', function(){ 41 42 swal("操作成功!", "图片上传喽!", "success"); 43 $("#IconMessage").html("头像选择成功,再次点击更换头像"); 44 var s=$("#haha1").attr("src"); 45 $("#hideInput").val(s); 46 cancel_shield(); 47 })然后将这个SRC放到表单里的隐藏INPUT框里,提交到到后台传到数据库,数据里保存的是BASE64编码,对上传进行了一定的限制之后 一般字符串大小为3W~5W的样子 如图
直接用img的src 可以在浏览器解析出来
1 1 $(window).load(function() { 2 2 var options = 3 3 4 4 { 5 5 6 6 thumbBox: '.thumbBox', 7 7 8 8 spinner: '.spinner', 9 9 10 10 imgSrc: '' 11 11 12 12 } 13 13 14 14 var cropper = $('.imageBox').cropbox(options); 15 15 16 16 var img=""; 17 17 18 18 $('#upload-file').on('change', function(){ 19 19 20 20 var reader = new FileReader(); 21 21 22 22 reader.onload = function(e) { 23 23 24 24 options.imgSrc = e.target.result; 25 25 26 26 cropper = $('.imageBox').cropbox(options); 27 27 28 28 getImg(); 29 29 30 30 } 31 31 32 32 reader.readAsDataURL(this.files[0]); 33 33 34 34 this.files = []; 35 35 36 36 // getImg(); 37 37 38 38 }) 39 39 40 40 $('#btnCrop').on('click', function(){ 41 41 42 42 swal("操作成功!", "图片上传喽!", "success"); 43 43 $("#IconMessage").html("头像选择成功,再次点击更换头像"); 44 44 var s=$("#haha1").attr("src"); 45 45 $("#hideInput").val(s); 46 46 cancel_shield(); 47 47 }) 48 48 49 49 50 50 function getImg(){ 51 51 52 52 img = cropper.getDataURL(); 53 53 54 54 $('.cropped').html(''); 55 55 56 56 $('.cropped').append('<img src="'+img+'" align="absmiddle" style="width:180px;margin-top:4px;border-radius:180px;box-shadow:0px 0px 12px #7E7E7E;"><p>180px*180px</p>'); 57 57 58 58 $('.cropped').append('<img src="'+img+'" align="absmiddle" id="haha1" style="width:128px;margin-top:4px;border-radius:128px;box-shadow:0px 0px 12px #7E7E7E;"><p>128px*128px</p>'); 59 59 60 60 $('.cropped').append('<img src="'+img+'" align="absmiddle" style="width:64px;margin-top:4px;border-radius:64px;box-shadow:0px 0px 12px #7E7E7E;" ><p>64px*64px</p>'); 61 61 62 62 } 63 63 64 64 65 65 66 66 $(".imageBox").on("mouseup",function(){ 67 67 68 68 getImg(); 69 69 70 70 }); 71 71 72 72 73 73 $('#btnZoomIn').on('click', function(){ 74 74 75 75 cropper.zoomIn(); 76 76 77 77 }) 78 78 79 79 $('#btnZoomOut').on('click', function(){ 80 80 81 81 cropper.zoomOut(); 82 82 83 83 }) 84 84 85 85 });
JS控制代码
跨音乐播放音乐
function passMusic(obj){top.PassData(obj)}
function PassData(obj){obj.window.frames["音乐框"].changeMusic();}
function changeMusic(obj){playlist=obj}
$("div[class='mod_page_nav js_pager']>a[class='js_pageindex'],div[class='mod_page_nav js_pager']>a[class='current']").click(function(){$("div[class='mod_page_nav js_pager'] a[class='current']").attr('class','js_pageindex');$(this).attr('class','current');});
/*下一页的绑定*/$("a[class='next js_pageindex']").click(function(){$("a[class='current']").next("a[class='js_pageindex']").attr('class','current');$("a[class='current']").first().attr('class','js_pageindex');});/*上一页的绑定*/$("a[class='previous js_pageindex']").click(function(){$("a[class='current']").prev("a[class='js_pageindex']").attr('class','current');$("a[class='current']").last().attr('class','js_pageindex');});
于是效果就完成了
var currentPage="${currentPage}";$("div[class='mod_page_nav js_pager']>a").eq(currentPage).attr('class','current');
总结
转载于:https://www.cnblogs.com/invoker-/p/6655042.html
音乐平台项目的几个问题总结(头像裁剪以及跨页面播放音乐)相关推荐
- 实训说明书 在线音乐平台项目规格说明书
在线音乐平台项目规格说明书 概况 项目名称 在线音乐平台 行业 网络媒体 架构类型 B/S结构 开发技术 1. B/S开发环境
- 十三款NFT音乐平台测评:为什么一线基金和主流市场纷纷选择押注音乐 NFT ?...
原文作者:木木 & 一点点 原标题:<Web 3.0学习笔记第二期:最全NFT音乐平台测评> 看够了PFP之类的图片NFT和崩盘边缘试探的链游,不如来学点新鲜的. 如果有持续关注一 ...
- vue实现音乐平台项目
成果 具体效果看B站视频演示: B站地址:视频演示 github地址:项目源码 码云地址:项目源码 vue3版本地址:添加链接描述 各位大佬,帮忙点个赞,投个币,star下,万分感谢大家! 项目结构 ...
- matlab 播放声音,matlab播放音乐
最近在做计算,写了一些matlab代码,脑壳还疼,所以决定发挥一下逗B精神,写一个程序玩一下. 想了想,既然写代码的时候喜欢听歌,而且我的电脑打开网易音乐的速度巨慢(不知道为什么..),那些一个程序直 ...
- html怎么设置点击播放音乐,html5点击播放音乐试听按钮动画特效
特效描述:html5 点击播放 音乐试听 按钮动画特效.html5鼠标滑过或点击播放音乐试听特效 代码结构 1. 引入CSS 2. 引入JS 3. HTML代码 Examples eventType ...
- C/C++笔记之播放音乐的函数
前缀为mci(Media Control Iterface): //头文件mmsystem.h或windows.h //需要添加静态库 (lib,"winmm.lib") //支持 ...
- 解决iphone 微信H5自动播放音乐问题
解决iphone 微信H5自动播放音乐问题 参考文章: (1)解决iphone 微信H5自动播放音乐问题 (2)https://www.cnblogs.com/hlhs/p/11157401.html ...
- linux音乐服务器mpd,在你的 Fedora 终端上播放音乐 | Linux 中国
原标题:在你的 Fedora 终端上播放音乐 | Linux 中国 做一个极客,在你的终端上播放音乐! -- Carmine Zaccagnino MPD(Music Playing Daemon), ...
- (音乐可视化项目)Light-Dancer为音乐而生
序言: 这是以我为项目组长所做的一个训练项目,项目结题之后笔者决定拿出来跟诸位分享,希望对你对我都有所帮助 一.成果简单介绍: (1)Reading-LED(作品) (2)Listening-LED( ...
最新文章
- 【CVPR2021】旷视研究院入选学术成果盘点
- js window.event 对象学习
- 作为程序猿----别说你不知道的人物!
- XBMC源代码分析 6:视频播放器(dvdplayer)-文件头(以ffmpeg为例)
- 微信机器人控制linux,微信运维交互机器人的示例代码
- 自动驾驶决策规划研究综述
- 非线性光纤光学_《Nature》子刊:解决大纵横比光纤中传质不匀的难题!
- Linux 用户授权的方法,linux中用户和权限管理
- 抖音短视频去水印方法 2018短视频伪原创
- 加ing形式的单词有哪些_动词ing形式变化规则有哪些
- java实现发送匿名邮件,帮帮忙!现在要实现邮件发送(还必须要匿名发送)!该怎么解决...
- QT的triggered意思
- 1325:【例7.4】 循环比赛日程表 2020-12-18
- Y2K问题和2038问题
- 988-211所有学校
- 机器学习算法学习——RBF算法原理图解
- 2020十大最佳大数据分析工具
- Agisoft Metashape 照片高程改正 附python源码
- android 视频相册,安卓11版本保存视频到相册,提示保存成功,相册里没有视频...
- BYOD携带自己的设备办公
热门文章
- using matlab drawing line graph for latex
- 朴素贝叶斯算法+模型的评价-查准率、召回率、F1-score及混淆矩阵(code实现)
- html5晶格化,前端开发——滚滚屏(没纵向滚动条)
- 百度图神经网络学习——day03:图神经网络算法(一)
- 集成学习(二)——XGBoost
- html css字幕滚动代码,纯CSS实现滚动3D字幕
- python顺序结构的关键字_Python相关数据结构的排序
- mysql st centroid_postgresql – ST_Distance的返回值单位
- python入门到应用实践_Python 3.x入门到应用实践
- 不能编辑access_vcf通讯录编辑器 v3.1.6 vcf通讯录编辑器软件