私はURLを与えられた後にオーディオプレーヤーを挿入するシンプルなJavaScript/HTMLページを作ろうとしています。下のコードが生成するボタンを押すたびに、オーディオプレーヤーが挿入され、ページがリフレッシュされてそのHTMLが消去されているように見えます。innerHTMLを変更すると、ページが自動的にリロードされますか?
HTML:
<div id="titleBlock">
<h4>Livestream Listener</h4>
<p>Enter a livestream URL below so you can listen in-browser.</p>
<form>
<input id="stream" type="url">
<button onclick="livestreamlisten()" class="btn">Listen</button>
</form>
</div>
<hr />
<div id="streamBlock">
</div>
JS:
function getStreamURL(){
var stream = document.getElementById('stream').value;
return stream;
}
function insertPlayer(url){
var html = `
<audio controls>
<source src="${url}" type="audio/mpeg">
<source src="${url}" type="audio/ogg">
</audio>
`;
document.getElementById("streamBlock").innerHTML = html;
}
function livestreamlisten(){
var url = getStreamURL();
insertPlayer(url);
}