Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产精品久久久久久搜索,韩国美女一级片,久久精品国产亚洲精品

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          html多頁面實現背景音樂的連續播放,簡單處理筆記

          在多個HTML頁面之間切換時持續播放背景音樂,可以使用JavaScript和localStorage來實現。這里有一個簡單的實現方案:

          1. 創建一個隱藏的音頻播放器: 在每個HTML頁面的<body>標簽內添加一個隱藏的音頻標簽,并設置自動播放和循環播放屬性。
          1. 使用JavaScript控制音頻狀態: 當頁面加載時,檢查localStorage中是否有音樂正在播放的狀態,如果有,則恢復播放。同時,當頁面離開時,記錄音樂的播放狀態到localStorage。

          下面是一個簡化版的多頁面背景音樂連續播放的Demo示例。這個例子包含兩個HTML文件:index.html 和 page2.html。請確保你有相應的音頻文件(如music.mp3)并放置在與HTML文件相同的目錄下。

          index.html

          <!DOCTYPE html>
          <html lang="en">
              <head>
                  <meta charset="UTF-8" />
                  <title>首頁</title>
                  <style>
                      #backgroundMusic {
                          display: none;
                      }
                  </style>
              </head>
              <body>
                  <h1>首頁</h1>
                  <p>這是首頁,背景音樂會持續播放。</p>
                  <a href="page2.html">前往第二頁</a>
          
                  <audio controls id="backgroundMusic" loop>
                      <source src="https://img.mtsws.cn/LightPicture/2023/08/45f935a39d0189c0.mp3" type="audio/mpeg" />
                      您的瀏覽器不支持 audio 元素。
                  </audio>
          
                  <script>
                      document.addEventListener('DOMContentLoaded', function () {
                          var audio = document.getElementById('backgroundMusic')
                          setupMusic(audio)
                      })
          
                      function setupMusic(audio) {
                          var musicTime = parseFloat(localStorage.getItem('musicTime')) || 0
                          var isPlaying = localStorage.getItem('musicPlaying') === 'true'
          
                          audio.currentTime = musicTime
                          if (isPlaying) {
                              audio.play().catch(function (error) {
                                  console.error('自動播放被阻止:', error)
                              })
                          }
          
                          audio.onplay = function () {
                              localStorage.setItem('musicPlaying', true)
                          }
                          audio.onpause = function () {
                              localStorage.setItem('musicPlaying', false)
                          }
                          audio.ontimeupdate = function () {
                              localStorage.setItem('musicTime', audio.currentTime)
                          }
                      }
                  </script>
              </body>
          </html>
          

          page2.html

          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF-8">
              <title>第二頁</title>
              <style>
                  #backgroundMusic { display: none; }
              </style>
          </head>
          <body>
          
          <h1>第二頁</h1>
          <p>切換到第二頁,背景音樂仍然連續播放。</p>
          <a href="index.html">返回首頁</a>
          
          <audio id="backgroundMusic" src="music.mp3" loop></audio>
          
          <script>
              document.addEventListener('DOMContentLoaded', function() {
                  var audio = document.getElementById('backgroundMusic');
                  setupMusic(audio);
              });
          
              // 與index.html中相同的setupMusic函數,確保音樂播放邏輯一致
              function setupMusic(audio) {/*...函數內容與上文相同...*/}
          </script>
          </body>
          </html>

          在這個示例中,index.html 和 page2.html 都包含了相同的JavaScript邏輯來管理背景音樂的播放狀態和時間。當用戶在頁面間導航時,音樂將會無縫繼續播放,而不是重新開始。請根據實際需要調整音頻文件路徑和其他細節。

          音頻是網頁承載內容很重要的一個元素,也是必不可少的網頁表現形式(圖、文、表、視、音)之一。缺少聲音的網站,就如同人不能說話一樣。曾經網頁要想播放音頻,必須得用第三方插件flash。隨著html5標準逐漸普及,如今幾乎所有的瀏覽器都使用html5來播放音頻。

          目標

          1. 如何設置音頻播放?
          2. 支持哪幾種音頻格式?

          音頻播放標簽--audio

          作用是在 HTML 頁面中嵌入音頻元素,來播放聲音文件或者音頻流。

          網頁版的音樂播放器

          audio標簽的屬性

          src 音頻的播放源(必須)

          controls 瀏覽器自帶的控制條(必須)

          autoplay 自動播放

          loop 循環播放

          preload 預加載

          音頻代碼

          每一種瀏覽器自帶的音頻播放控制器都不一樣,但功能都一樣。網上看到的播放器,大多數都是改過它的樣式。

          瀏覽器自帶的音頻控制條

          支持多個格式--source標簽

          <audio> 元素支持三種視頻格式: MP4, WebM, 和 Ogg。

          如果不確定音頻格式是哪個格式,可以使用source標簽。<source> 元素可以鏈接不同格式的視頻文件,瀏覽器將使用第一個可識別的格式。

          支持多種格式

          總結

          audio總結

          能是出于節省用戶流量,許多移動端瀏覽器都不支持H5自動播放視頻,必須在用戶主動交互(點擊或者滑動等)后才可以通過js播放視頻

          PC端可以通過設置muted,自動播放靜音視頻

          安卓瀏覽器均不支持自動播放,實測在微信內置瀏覽器,滑動視為交互行為,可以在這之后播放視頻,抖音內置瀏覽器則需要點擊交互,鴻蒙系統瀏覽器可以自動播放靜音視頻

          解決方案

          • 法一 引導用戶點擊或滑動

          進入網站時彈窗,例如歡迎語等,用戶點擊關閉后執行視頻播放
          簡單粗暴的方法,在某些場景時適用的,實測在安卓、鴻蒙、IOS、抖音瀏覽器等均可以用這個方法解決

          close() {

          const videos = document.querySelectorAll('video');

          for (let i = 0; i < videos.length; i++) {

          const element = videos[i];

          element.play();

          }

          }

          【更多音視頻學習資料,點擊下方鏈接免費領取↓↓,先碼住不迷路~】

          點擊領取→音視頻開發基礎知識和資料包

          法二 jsmpeg

          將視頻轉成ts格式,通過jsmpeg解碼器進行加載播放,可以實現自動播放,實測基本上可以解決所有移動端無法播放視頻的問題

          轉ts

          安裝ffmpeg,輸入命令將mp4轉成ts

          • s - 分辨率
          • b - 碼率 b:v代表視頻碼率 b:a代表音頻碼率
          • r - 幀頻

          ffmpeg.exe -i in.mp4 -f mpegts -codec:v mpeg1video -s 680x1080 -b:v 2074k -r 29.97 out.ts

          <!DOCTYPE html>

          <html lang="en">

          <head>

          <meta charset="UTF-8" />

          <meta http-equiv="X-UA-Compatible" content="IE=edge" />

          <meta name="viewport" content="width=device-width, initial-scale=1.0" />

          <title>Document</title>

          // 引入jsmpeg

          <script src="./jsmpeg.min.js"></script>

          <style>

          #canvas {

          width: 100%;

          height: 100%;

          }

          </style>

          </head>

          <body>

          <canvas id="canvas" height="750" width="750"></canvas>

          <script>

          var canvas = document.querySelector("#canvas");

          // 加載ts文件

          var player = new JSMpeg.Player("./out.ts", {

          canvas: canvas,

          loop: true, // 循環播放

          autoplay: true, // 自動播放

          audio: false, // 禁用音頻

          });

          player.play();

          </script>

          </body>

          </html>

          其他問題

          • 移動端自動全屏播放視頻
          <video webkit-playsinline="webkit-playsinline" playsinline></video>

          如果你對音視頻開發感興趣,覺得文章對您有幫助,別忘了點贊、收藏哦!或者對本文的一些闡述有自己的看法,有任何問題,歡迎在下方評論區討論!


          主站蜘蛛池模板: 精品无码av一区二区三区| 欲色影视天天一区二区三区色香欲| 成人欧美一区二区三区在线视频| 国产一区二区三精品久久久无广告| 无码av人妻一区二区三区四区| 国产高清精品一区| 韩国一区二区三区视频| 亚洲Av无码一区二区二三区| 好看的电影网站亚洲一区| 日韩精品一区二区三区不卡| 极品少妇一区二区三区四区| 精品国产一区二区三区久久久狼| 国产精品免费一区二区三区四区 | 精品亚洲AV无码一区二区| 日本成人一区二区| 国产成人AV一区二区三区无码 | 青娱乐国产官网极品一区| 亚洲AV日韩综合一区| 亚洲综合av一区二区三区不卡| 亚洲综合无码一区二区| 日韩精品成人一区二区三区| 国产精品一区二区久久国产| 国产在线一区二区综合免费视频| 中文字幕精品无码一区二区 | 在线精品一区二区三区| 中文字幕一区二区三匹| 亚洲欧美日韩一区二区三区在线 | 波多野结衣一区二区三区88 | 亚洲av无码一区二区三区在线播放| 亚洲午夜精品一区二区公牛电影院| 亚洲日本va午夜中文字幕一区| 亚洲av综合av一区| 国内自拍视频一区二区三区| 在线成人一区二区| 高清无码一区二区在线观看吞精| 久久99久久无码毛片一区二区| 国精品无码一区二区三区在线 | 国产美女在线一区二区三区| 无码一区18禁3D| 一区二区三区四区无限乱码| 中文字幕精品无码一区二区三区|