The HTMLMediaElement.networkState property indicates the current state of the fetching of media over the network.


var networkState = audioOrVideo.networkState;


An unsigned short. Possible values are:

Constant Value Description
NETWORK_EMPTY 0 There is no data yet. Also, readyState is HAVE_NOTHING.
NETWORK_IDLE 1 HTMLMediaElement is active and has selected a resource, but is not using the network.
NETWORK_LOADING 2 The browser is downloading HTMLMediaElement data.
NETWORK_NO_SOURCE 3 No HTMLMediaElement src found.


This example will listen for the audio element to begin playing and then check if it is still loading data.

<audio id="example" preload="auto">
 <source src="sound.ogg" type="audio/ogg" />

var obj = document.getElementById('example');

obj.addEventListener('playing', function() {

  if (obj.networkState === 2) {
    // Still loading...



Browser compatibility

BCD tables only load in the browser

See also