您好,登錄后才能下訂單哦!
這篇文章主要介紹“HTML5中video audio拖動的方法”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“HTML5中video audio拖動的方法”文章能幫助大家解決問題。
html5視頻video:
當前video支持三種視頻格式:
Ogg = 帶有 Theora 視頻編碼和 Vorbis 音頻編碼的 Ogg 文件 目前firefox 3.5+,Opera 10.5+,Chrome 5.0+ 支持該格式
MPEG4 = 帶有 H.264 視頻編碼和 AAC 音頻編碼的 MPEG 4 文件 目前IE9.0+,Chrome5.0+,Safari 3.0+支持該格式
WebM = 帶有 VP8 視頻編碼和 Vorbis 音頻編碼的 WebM 文件 目前Firefox 4.0+,Opera 10.6+,Chrome6.0+支持該格式
也就是說目前Chrome 6.0+以上版本對以上格式都是支持的,IE只支持MPEG4格式還是得需要9.0以上版本,與IE走相同支持路線的就是Safari在3.0以上版本也僅支持MPEG4
Firefox和Opera走的是相同路線,沒有對MPEG4的支持,但是分別支持了Ogg格式和WebM格式
總結來說:
操作系統自帶的瀏覽器支持的是MPEG 4
做搜索的巨頭造的瀏覽器全面支持
第三方瀏覽器Firefox和Opera不支持MPEG 4
在html5 中顯示視頻非常簡單只需在代碼中添加:
<video src="/i/moive.ogg" controls="controls"></video>
或者:
<video controls="controls">
<source src="/i/moive.ogg" type="video/ogg"/>
Your browser does not support the video tag.
</video>
上面的controls熟悉供添加播放,暫停和音量控件
<video>和</video>之間的內容是供不支持video元素的瀏覽器顯示的
其次還可以制定video的寬度和高度:
<video width="320" height="240" controls="controls">
<source src="/i/moive.ogg" type="video/ogg"/>
Your browser does not support the video tag.
</video>
為了適配多個瀏覽器,可猜測在<video>和</video>做適配,瀏覽器將使用第一個可識別的格式:
<video width="320" height="240" controls="controls">
<source src="movie.ogg" type="video/ogg">
<source src="movie.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
video結合DOM可以良好的對video進行控制,可以直接在<script>標簽中使用var videotest = document.getElementById("video_name");
找到video控件后,可以使用其方法進行播放,暫停操作,如if(videotest.paused){videotest.paly()},就是通過屬性判斷可以使用其屬性pause如果是暫停
狀態的話,調用起play()方法進行播放。
HTML5 音頻audio:
對于audio的支持,html5 也提供了支持,也是支持三種格式:
Ogg Vorbis
MP3
Wav
對于三種的支持基本還是遵從視頻的規律,唯一不同的就是Chrome3.0還不支持Wav而Safari卻在3.0的時候對Wav格式進行了支持。這樣一對比就相當好記了,但是真心
不曉得記這個有什么用尼? =_ =!(考試綜合癥)
html5播放音頻和視頻的代碼也相似,只是標簽改了一下下而已:
<audio src="song.ogg" controls="controls"></audio>
control屬性還是用于添加播放、暫停和音量控件。
<audio></audio>控件直接內容還是供不支持audio元素的瀏覽器顯示的輔助。標簽之間同意允許多個source元素,source元素可以連接不同的音頻文件,瀏覽器還是
使用第一個可識別的格式:
<audio controls="controls" autoplay="autoplay" loop="loop">
<source src="song.ogg" type="audio/ogg"/>
<source src="song.mp3" type="audio/mp3"/>
Your browser does not support the audio tag.
</audio>
HTML5 拖放:
在HTML5 中拖放是標準的一部分,任何元素都能夠拖放。
Internet Explorer 9、Firefox、Opera 12、Chrome 以及 Safari 5 支持拖放。
注釋:在 Safari 5.1.2 中不支持拖放。
不用想必須是跟JavaScript結合完成的動作
首先為了使元素可以拖動,把draggable屬性設置為true
<img id="drag1" draggable="true" />
拖動什么 ondragstart和setData()
<img id="drag1" draggable = "true" ondragstart="drag(event)" src="/i/img_logo.gif"/>
function drag(ev){
ev.dataTransfer.setData("Text",ev.target.id);
}
dataTransfer.setData()方法用來設置被拖放數據的類型和值
表示數據類型是"Text" 值是可拖動元素的id("drag1")
放到什么地方-ondragover
ondragover事件規定在何處放置被拖動的數據。
默認情況下,如法將數據、元素放置到其他元素中,如果需要設置允許方法,必須阻止對元素默認的處理方式。
通過對目標控件調用ondragover事件的event.preventDefault()方法:
event.preventDefault();
進行放置 - ondrop
放置被拖動數據時,該事件會在目標控件上發生,也就說要對目標控件設置ondrop屬性
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"/>
function drop(ev){
ev.preventDefault();
var data=ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data));
}
調用preventDefault()來避免瀏覽器對數據的默認處理(drop事件的默認處理行為是以鏈接式打開)
通過dataTransfer.getData("Text")方法獲得被拖動的數據,該方法將返回在setData()方法中設置為相同類型的任何數據
被拖數據是被拖元素的id("drag1")
把被拖元素追加到放置元素的目標中
綜合上述,被拖動和要拖動到的元素應該在html中這樣寫:
被拖動元素:
<img id="img_drag" src="/i/img_logo.gif" draggable="true" ondragstart="drag(event)"/>
拖動到的目標元素:
<div id="div_dest" ondrop="drop(event)" ondragover="allowDrop(event)"/>
JavaScript這樣寫:
//被拖動時觸發,用來設置要拖放的數據類型(文本類型)和值(控件的id)
<script type="text/javascript">
function drag(ev){
ev.dataTransfer.setData("Text",ev.target.id);
}
//對目標元素的默認放置事件進行處理
function allowDrop(ev){
ev.preventDefault();
}
//放到目標位置的時候,將拖動的數據添加到目標位置
function drop(ev){
ev.preventDefault();
var data = ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data));
}
</script>
對數據的放置和獲取使用的ev.dataTransfer.getData("Text") 獲取數據,參數是數據的類型
ev.dataTransfer.setData("Text",ev.target.id);
關于“HTML5中video audio拖動的方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。