Estoy tratando de hacer un control deslizante simple que al elegir un cierto valor en él (en este caso 76), el botón que dice "Continuar" reproduce un cierto sonido en lugar de redirigir, pero parece que no lo hago funcionar , ¿podrían ayudarme con esto? aquí está el fragmento.
<div id="Slider"> <span id="rangeValue">0</span> <Input class="range" type="range" name "" value="0" min="0" max="100" onChange="rangeSlide(this.value)" onmousemove="rangeSlide(this.value)"></Input> </div> <script type="text/javascript"> function rangeSlide(value) { document.getElementById('rangeValue').innerHTML = value; } </script> <button class="btn-1" id="i22w3" onclick="play()">Continue</button> <audio id="audio" src="https://www2.cs.uic.edu/~i101/SoundFiles/BabyElephantWalk60.wav"></audio> <script type="text/javascript"> var audio = document.getElementById("audio"); function play() { if ('rangeValue' = 76) { audio.play(); } else { window.location.replace("https://example.com/"); }¡Gracias de antemano!
tienes un error en tu codigo
igualdad en JS https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Strict_equality
y 'rangeValue' debe ser una variable -> valor del control deslizante
function play() { if ('rangeValue' === 76) { // missing `===` audio.play(); } else { window.location.replace("https://example.com/"); } }Se corrigieron algunas cosas en el código, algunas de las cuales podrían haber sido por olvidar copiar el par de líneas inferiores 😉.
<div id="Slider"> <span id="rangeValue">0</span> <Input class="range" type="range" name "" value="0" min="0" max="100" onChange="rangeSlide(this.value)" onmousemove="rangeSlide(this.value)"></Input> </div> <script type="text/javascript"> function rangeSlide(value) { document.getElementById('rangeValue').innerHTML = value; } </script> <button class="btn-1" id="i22w3" onclick="play()">Continue</button> <script> function play() { const rangeValue = document.getElementById('rangeValue').textContent; if (rangeValue === "76") { console.log('play sound') } else { console.log('replace') } } </script>Pruébalo aquí
Lo que hice:
rangeValue en play() porque ahora mismo es solo una cadena: 'rangeValue' .= a ===Eso es todo, simplemente reemplace los registros de mi consola con lo que desee y vuelva a agregar los elementos que eliminé y debería funcionar.