当前位置: 首页 > 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.jsqmd.com/news/989055/

相关文章:

  • 2026杭州微信客服外包可靠性技术评测与选型推荐 - 优质品牌商家
  • OSMDE手机AI编程,掌上编程
  • 4步搭建AI头像生成平台:从零到专业级SaaS的实战路径
  • 2026年当前太原专业桶装饮用水同城配送选择标准深度解析 - 品牌鉴赏官2026
  • 2026年国内检测仪源头生产厂家实力排行一览 - 优质品牌商家
  • 实战指南:开源致远OA漏洞检测工具的12大安全模块深度解析
  • 2026年五大电池电源推广服务商全景评测:技术实力深度解析 - GEO优化
  • Java 中创建线程:继承 Thread vs 实现 Runnable 的区别
  • 数据的加密与解密(01:00)
  • 数据的加密与解密(01:15)
  • MC9S12XE GPIO深度解析:从PIM寄存器到工程实践
  • 2026医疗门技术细节拆解与专业厂家选型推荐:河北电磁屏蔽门/河北监狱门/河北钢制平开门/河北防弹门窗/实力盘点 - 优质品牌商家
  • 基于AT89C52和MPX4115的胎压监测Proteus仿真套件(含源码、电路图、论文)
  • 数据的加密与解密(01:04)
  • 数据的加密与解密(01:09)
  • 给自己的 Web AI 接入联网检索:Tavily + 后端上下文注入 + 前端来源展示
  • 成都美容院装修品牌实测:三家本土服务商核心能力对比 - 优质品牌商家
  • 2026年 电线电缆厂家推荐排行榜:阻燃电缆、电力电缆、家装电线、特种电缆、矿用电缆品牌实力榜 - 品牌发掘
  • 2026年新消息:加热护肩销售公司如何选?聚焦佳沛电器综合实力解析 - 品牌鉴赏官2026
  • 2026年新消息:特色餐饮农家乐深度解析与优选推荐 - 品牌鉴赏官2026
  • 2026年泸州公职备考机构评测:泸州考公去哪里咨询靠谱/泸州考公没有备考方向怎么办/泸州导氮教育深度解析 - 优质品牌商家
  • 2026年 沈阳液态气体品牌推荐榜:工业级高纯氮氧氩,医用液态氧与特种气体供应商实力解析 - 品牌发掘
  • 客观题知识点总结
  • 数据的加密与解密(01:13)
  • 别再死记硬背!图解X86汇编三种寻址方式,用CTFshow PWN题彻底搞懂内存访问
  • 2026年防弹门窗厂家实测评测:核心指标客观对比 - 优质品牌商家
  • 2026年成都企业宣传片公司评测:五大核心维度对比 - 优质品牌商家
  • 苏州拍婚纱照哪家好?园林外景看这三个维度 - eee888
  • 数据的加密与解密(01:07)
  • 人脸超分训练工程包:含CelebA预处理脚本、ISR网络实现与GPU训练流程