मुझे "इमेज/whatisyourname.wav" ऑडियो के साथ, "आपका नाम क्या है" प्रॉम्प्ट में ऑडियो संलग्न करने में कठिनाई हो रही है। मुझे नहीं पता कि इन दो अलग-अलग तत्वों को एक साथ कैसे जोड़ा जाए।

मैं इस पर घंटों से काम कर रहा हूं, और ठीक से सोचने के लिए निराश होने का तरीका। मैं जावास्क्रिप्ट बिल्कुल नहीं जानता, इसलिए कृपया, कोई सुझाव इस भाषा में मेरे ज्ञान से परे होगा।

   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>eve_</title>
<link rel="icon" rel="preload" href="images/evecircle.png" />

<style>
#video {
    margin-left:-10px;
    margin-top:-10px;
}

</style>

 <script src="https://code.responsivevoice.org/responsivevoice.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

</head>
<style type="text/css">

body {
    overflow:hidden;
}

</style>

<body onload="delayedAlert();">

<script>

var timeoutID;

function delayedAlert() {
  timeoutID = window.setTimeout(slowAlert, 3000);
}

function slowAlert() {
 var audio= document.getElementsByTagName('audio')[0];
 const audio2 = document.getElementsByTagName('audio')[1];


audio.play(); 
var myvar1;alert('...Hello?')

audio2.play();
var myvar2;alert('Hello?');

const name = prompt('What is your name?')
const sentence = 'Hello' + name +',I am Eve. What does a' +name +'look like?';
responsiveVoice.speak(sentence, "US English Female", {rate: 0.7});

}


</script>

 <audio>
  <source src="images/hellllloooo.wav" type="audio/wav" preload=true>
 </audio>

 <audio>
  <source src="images/sorry.wav?.wav?.wav" type="audio/wav" preload=true>
 </audio>

 <audio>
 <source src="images/whatisyourname.wav" type="audio/wav" preload=true>
 </audio>



        <video autoplay="autoplay" preload="auto" id="video" src="images/secondnew.mp4" width="1300px" height="auto" style="position:absolute; z-index:-1;" >
        Video not supported.
         </video>






</body>
</html>
1
B.Ashcroft 1 अप्रैल 2018, 08:52

3 जवाब

सबसे बढ़िया उत्तर

मुझे लगता है कि यह कोड आपकी मदद करेगा। मुझे लगता है कि आप स्टॉप विधि को कॉल करते हैं।

function slowAlert() {
    var audio= document.getElementsByTagName('audio')[0];
    var audio2 = document.getElementsByTagName('audio')[1];
    var audio3 = document.getElementsByTagName('audio')[2];


    audio.play(); 
    var myvar1;alert('...Hello?')
    audio.stop();

    audio2.play();
    var myvar2;alert('Hello?');
    audio2.stop();

    audio3.play();
    const name = prompt('What is your name?')
    audio3.stop();
    const sentence = 'Hello' + name +',I am Eve. What does a' +name +'look like?';
    responsiveVoice.speak(sentence, "US English Female", {rate: 0.7});

}
1
LostCode 1 अप्रैल 2018, 06:04

यदि आपको ठीक उसी समय खेलने के लिए उत्तरदायी आवाज प्राप्त करने में समस्या हो रही है जब आप किसी चीज को सचेत/संकेत देते हैं, तो आपको कॉलबैक का उपयोग करना होगा, जैसे:

const name = prompt('What is your name?')
alertAndSpeak('Hello' + name +', I am Eve. What does a ' + name + ' look like?');

function alertAndSpeak(text) {
  responsiveVoice.speak(text, "US English Female", {
    rate: 0.7,
    onstart: () => alert(text),
    onend: null
  });
}
    
<script src="https://code.responsivevoice.org/responsivevoice.js"></script>
1
CertainPerformance 1 अप्रैल 2018, 06:10

आपको ऑडियो फ़ाइल को DOM में एम्बेड करने की आवश्यकता नहीं है। कुछ ऐसा काम करना चाहिए। आपको रिफैक्टर करने की आवश्यकता होगी:

var promptAudio = new Audio('promp-sound.mp3');
promptAudio.volume = 1;

function promptSound() {
    promptAudio.currentTime = 0;
    promptAudio.play();

    // call your alert
}
1
Ryan W. 1 अप्रैल 2018, 06:04