打算設(shè)計(jì)一個(gè)播放器,其中一個(gè)函數(shù)控制點(diǎn)擊菜單某首歌曲即可播放,在該函數(shù)內(nèi)調(diào)用music.play()后繼續(xù)console.log(music.src)是可以正常顯示src路徑的。然而在另一個(gè)控制播放下一曲的函數(shù)中,不論輸出src還是currentSrc都是顯示未定義,甚至輸出currentTime等相關(guān)屬性都是顯示為0.相關(guān)代碼如下:function prevSong(msc){ //上一首歌
let s = msc.currentSrc; let tar; /*
返回當(dāng)前播放的節(jié)點(diǎn)給tar,代碼略
*/
msc.pause(); if(tar.previousSibling.nodeName == 'LI'){ let index = tar.previousSibling.innerHTML;
msc.src = 'src/music/'+index+'.mp3';
}else{ let chd = tar.parentNode.childNodes; let res = chd[chd.length-1];
msc.src = 'src/music/'+res.innerHTML+'.mp3'
} //msc.load();
msc.play();
}另外,如何正常獲取音頻長(zhǎng)度duration?我照著網(wǎng)上各種解決方法,使用了onloadedmetadata甚至是promise,輸出的都是NaN直接把demo給post上來(lái)吧:http://www.malakh.xyz/demo2/js:http://www.malakh.xyz/demo2/s...
JS無(wú)法獲取正在播放的audio的src等屬性 / audio的duration為NaN
慕絲7291255
2018-10-24 09:46:59