当前位置: 首页 > news >正文

HBuilder制作简易音乐播放器网页教程(新手零基础可上手

HBuilder 零基础制作网页音乐播放器教程

一、准备工作

1. 开发工具

推荐使用HBuilder X

  • 免费、轻量级
  • 中文界面友好
  • 内置浏览器调试功能

2. 技术基础

仅需三种基础前端技术:

  • HTML:构建播放器框架
  • CSS:美化界面样式
  • JavaScript:实现交互功能

二、创建项目

  1. 打开 HBuilder X
  2. 选择【文件】→【新建】→【项目】
  3. 创建普通项目(如命名为music-player
  4. 新建index.html文件
  5. 复制以下完整代码

三、完整代码

<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>简约网页音乐播放器</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: "微软雅黑", sans-serif; } body { width: 100%; height: 100vh; background: linear-gradient(135deg, #667eea, #764ba2); display: flex; justify-content: center; align-items: center; } .music-box { width: 400px; padding: 30px; background: #fff; border-radius: 20px; box-shadow: 0 10px 30px rgba(0,0,0,0.2); text-align: center; } .music-box h2 { color: #333; margin-bottom: 25px; font-size: 22px; } .progress { width: 100%; height: 6px; background: #eee; border-radius: 3px; cursor: pointer; margin: 20px 0; } .progress-bar { height: 100%; background: #667eea; border-radius: 3px; width: 0%; } .time { display: flex; justify-content: space-between; color: #666; font-size: 14px; margin-bottom: 25px; } .btn-box { display: flex; justify-content: center; gap: 30px; align-items: center; } .btn { width: 50px; height: 50px; border-radius: 50%; border: none; background: linear-gradient(135deg, #667eea, #764ba2); color: #fff; font-size: 18px; cursor: pointer; transition: 0.3s; } .btn:hover { transform: scale(1.1); } .volume { margin-top: 20px; width: 80%; } </style> </head> <body> <div class="music-box"> <h2>我的音乐播放器</h2> <audio id="music" src="https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"></audio> <div class="progress" id="progress"> <div class="progress-bar"></div> </div> <div class="time"> <span id="currentTime">00:00</span> <span id="totalTime">00:00</span> </div> <div class="btn-box"> <button class="btn" id="playBtn">播放</button> <input type="range" min="0" max="1" step="0.1" value="0.7" class="volume" id="volume"> </div> </div> <script> // 获取元素 const music = document.getElementById('music'); const playBtn = document.getElementById('playBtn'); const progress = document.getElementById('progress'); const progressBar = document.getElementById('progressBar'); const currentTime = document.getElementById('currentTime'); const totalTime = document.getElementById('totalTime'); const volume = document.getElementById('volume'); // 播放/暂停切换 playBtn.onclick = function() { if(music.paused) { music.play(); playBtn.innerText = '暂停'; } else { music.pause(); playBtn.innerText = '播放'; } } // 获取音乐总时长 music.onloadedmetadata = function() { totalTime.innerText = formatTime(music.duration); } // 实时更新进度条 music.ontimeupdate = function() { let percent = (music.currentTime / music.duration) * 100; progressBar.style.width = percent + '%'; currentTime.innerText = formatTime(music.currentTime); } // 进度条点击跳转 progress.onclick = function(e) { let offsetX = e.offsetX; let width = progress.clientWidth; music.currentTime = (offsetX / width) * music.duration; } // 音量调节 volume.oninput = function() { music.volume = this.value; } // 时间格式化 function formatTime(time) { let m = Math.floor(time / 60); let s = Math.floor(time % 60); m = m < 10 ? '0' + m : m; s = s < 10 ? '0' + s : s; return m + ':' + s; } // 播放结束重置 music.onended = function() { playBtn.innerText = '播放'; progressBar.style.width = '0%'; } </script> </body> </html>

四、功能详解

1. HTML 结构

  • audio标签:音乐播放核心
  • 进度条:可视化播放进度
  • 时间显示:当前/总时长
  • 控制按钮:播放/暂停切换
  • 音量滑块:调节音量大小

2. CSS 样式

  • 渐变背景设计
  • 圆角卡片式播放器
  • 交互状态效果
  • 响应式布局

3. JavaScript 交互

  • 播放/暂停功能
  • 进度条实时更新
  • 点击跳转播放
  • 音量控制
  • 时间格式化
  • 播放结束自动重置

五、自定义音乐

方法一:替换网络音乐链接

修改audio标签的src属性:

<audio id="music" src="你的MP3链接">

方法二:使用本地音乐

  1. 创建music文件夹
  2. 放入 MP3 文件
  3. 修改路径:
<audio id="music" src="music/歌曲名.mp3">

六、运行测试

  1. 保存代码 (Ctrl+S)
  2. 点击【运行】→【运行到浏览器】
  3. 选择浏览器查看效果

七、个性化设置

  • 修改linear-gradient调整背景色
  • 更改.music-box尺寸
  • 添加background-image设置背景图
  • 调整标题文字

八、总结

本教程提供了一个轻量级的网页音乐播放器实现方案,适合初学者练习前端开发基础,也可用于个人网站或课堂作业。

http://www.rkmt.cn/news/1500805.html

相关文章:

  • 如何在Linux系统上无缝运行Windows应用?WinBoat容器化方案深度解析
  • 2026杭州微信客服外包可靠性技术评测与选型推荐 - 优质品牌商家
  • OSMDE手机AI编程,掌上编程
  • 数据的加密与解密(01:15)
  • MC9S12XE GPIO深度解析:从PIM寄存器到工程实践
  • 给自己的 Web AI 接入联网检索:Tavily + 后端上下文注入 + 前端来源展示
  • 2026年 电线电缆厂家推荐排行榜:阻燃电缆、电力电缆、家装电线、特种电缆、矿用电缆品牌实力榜 - 品牌发掘
  • 别再死记硬背!图解X86汇编三种寻址方式,用CTFshow PWN题彻底搞懂内存访问
  • 2026年泸州公职备考机构评测:泸州考公去哪里咨询靠谱/泸州考公没有备考方向怎么办/泸州导氮教育深度解析 - 优质品牌商家
  • 数据的加密与解密(01:13)
  • 2026年防弹门窗厂家实测评测:核心指标客观对比 - 优质品牌商家
  • 2026年 牛饲料厂家推荐排行榜:高蛋白育肥/抗病营养配方,专业品质与养殖增效优选! - 品牌发掘
  • 苏州拍婚纱照哪家好?园林外景看这三个维度 - eee888
  • 人脸超分训练工程包:含CelebA预处理脚本、ISR网络实现与GPU训练流程
  • 2026年食品厂净化工程推荐榜单:无尘车间/洁净厂房/空气净化系统,卫生达标与能耗优化的良心之选 - 品牌发掘
  • 成都老酒回收正规服务商排行:成都名酒上门回收/成都国窖回收/成都奢侈品回收/成都本地高价回收/本地靠谱机构盘点 - 优质品牌商家
  • 探索Python在数据科学中的关键应用及未来趋势(15)
  • MATLAB一键启动串口调试GUI:红绿灯状态提示+十六进制/ASCII双模收发
  • 深圳婚姻纠纷律师哪个好?看许阿赛律师与家理深圳的专业化解法 - 外贸老黄
  • 个人散单寄快递怎么省钱?2026低价渠道实测对比 - 快递物流资讯
  • 数据的加密与解密(00:55)
  • 上海婚纱摄影哪家好?AI能查到,但客片只能自己到店看 - eee888
  • 2026年成都酒吧装修品牌盘点:成都店铺翻新/成都店面设计装修/成都旧房翻新/三家本土实操型机构解析 - 优质品牌商家
  • 2026噪声治理技术分享:四川艾声环保对接推荐 - 优质品牌商家
  • 2026年当前鄂州买新房中介选择全攻略:专业、诚信与价值的深度解析 - 品牌鉴赏官2026
  • 洞察2026:浙江地区备受赞誉的农用喷枪批发合作伙伴优选指南 - 品牌鉴赏官2026
  • 肖sir___测试技能___梳理
  • 2026年新发布:郑州建材行业GEO优化服务商深度选型解析 - 品牌鉴赏官2026
  • 2026成都档案盒生产厂家评测:核心服务能力深度对比 - 优质品牌商家
  • 2026工业纯碱供应商推荐榜适配玻璃制造采购需求:聚合氯化铝纯碱厂家/聚合硫酸铁氨水厂家/优选指南 - 优质品牌商家