0
我需要閱讀並修改視頻元素中的一些標籤和屬性,該元素使用video.js作爲播放器。我已經能夠使用getElementsByTagName和getAttribute讀取信息,如下面的代碼所示。但我希望通過video.js(5.6.0)有更簡單/更好/最好的方式來做到這一點。什麼是正確的方式來閱讀video.js中的視頻元素/屬性?
var video = document.getElementsByTagName('video')[0];
var poster = video.getAttribute('poster');
var sources = video.getElementsByTagName('source');
var tracks = video.getElementsByTagName('track');
if (poster != null)
{
var newposter = addChk(poster, "p"); // generates modified source
video.setAttribute('poster', newposter);
}
for (var i = 0; i < sources.length; i++) {
var s = sources[i].getAttribute('src');
s = addChk(s,"f"); // generates modified source
sources[i].setAttribute('src', s);
}
for (var i = 0; i < tracks.length; i++)
{
var s = tracks[i].getAttribute('src');
s = addChk(s, "c"); // generates modified source
tracks[i].setAttribute('src', s);
}
謝謝。
感謝有關video.js方法的詳細信息。我限制我的使用只有mp4和webm,而不是處理IE8。鑑於這些假設,如果我在執行getElementsByTagName/getAttribute操作之後才創建video.js播放器(即,在手動設置video.js播放器之前執行代碼,而不依賴數據設置屬性) ,getElementsByTagName/getAttribute是否安全? (只是試圖確保我明白什麼會和不會工作。) – kgcode
我不會推薦它。一旦玩家初始化,使用video.js API與視頻元素進行交互。 – misterben
謝謝。我假設你是指軌道,而不是在刪除文本軌道的循環中? – kgcode