document.addEventListener('click',function(z){
if(z.target.tagName==='A'){
let h=new URL(z.target.href).hash;
if(h !=''){
z.preventDefault();
let b=document.getElementById(h.replace('#','')); // убрал решётку
b.scrollIntoView({block:'center',behavior:'smooth'});}}}); // отправил к центру блока с ID который был после решётки
$filename = '123.wav';
header('content-type: audio/vnd.wave');
header('Content-Length: '.filesize($filename));
readfile($filename);
die;
ну и принять на xhr как-то так:xhr.onload = function(){var blob = new Blob([new Uint8Array(this.response)],{type:"audio/vnd.wave"});
document.querySelector("audio").src = window.URL.createObjectURL(blob);return true;}
<div id="txt"></div><input type="text" oninput="typeit(this.value)"/>
<script>function typeit(text){
document.getElementById('txt').innerHTML=text;}</script>
<div id="person">ВВП</div>
<input id="txt" type="text"/>
<script>
document.getElementById('person').addEventListener('click',(e)=>{
document.getElementById('txt').value=document.getElementById('person').innerHTML;});
</script>
<button id="btn">click!</button>
<input id="txt" type="text">
<script>
document.getElementById('btn').addEventListener('click',(e)=>{
console.log(document.getElementById('txt').value);});
</script>