HTMLMediaElement.readyState
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
io error: No such file or directory (os error 2) (/home/runner/work/yari/yari/mdn/translated-content/files/zh-tw/web/api/html_dom_api/index.md)
HTMLMediaElement.readyState
屬性回傳目前媒體的就緒狀態。
語法
var readyState = audioOrVideo.readyState;
值
一個 unsigned short
,可能的值有:
常數 | 值 | 描述 |
---|---|---|
HAVE_NOTHING | 0 | 沒有可用的媒體資源。 |
HAVE_METADATA | 1 | 已經取得足夠的媒體資源並已初始化元資料。繼續取得媒體資源不會導致例外。 |
HAVE_CURRENT_DATA | 2 | 媒體資料已經足夠播放目前的時間,但沒有足夠的資料再播放一幀。 |
HAVE_FUTURE_DATA | 3 | 資料已經足夠播放目前的時間,而且有至少一點點資料可以播放未來的時間(換句話說,可能只多了一到兩幀)。 |
HAVE_ENOUGH_DATA | 4 | 資料足夠,且下載率夠高。媒體可以播放到結束而不被中斷。 |
範例
下面這個例子會監聽 `example` 這個元素,並檢查是否已載入足夠的媒體資源。如果是的話,它會繼續播放。
html
<audio id="example" preload="auto">
<source src="sound.ogg" type="audio/ogg" />
</audio>
js
var obj = document.getElementById("example");
obj.addEventListener("loadeddata", function () {
if (obj.readyState >= 2) {
obj.play();
}
});
標準
Specification |
---|
HTML Standard # dom-media-readystate-dev |
瀏覽器相容性
BCD tables only load in the browser
也參考看看
- The interface defining it,
HTMLMediaElement
.