onclick事件中的php echo无法正常工作

时间:2016-01-22 12:45:05

标签: javascript php

我有这个基本的音乐播放器,当我点击图像音乐开始时,当我再次点击它时音乐停止,依此类推。 当我在HTML中执行此操作时,一切正常。

<script>
    function StartOrStop(audioFile) {
        var audie = document.getElementById("myAudio");
        if (!audie.src || audie.src !== audioFile) audie.src = audioFile;
        console.log(audie.paused);
        if (audie.paused == false) {
            console.log('pause');
            audie.pause();
        } else {
            console.log('play');
            audie.play();
        }
    }
</script>


<img src="images/play.png" alt="Play Button" width="400" height="400" onclick="StartOrStop('myMP3.mp3')"> 
<audio id="myAudio"></audio>

但是当我尝试将其连接到我的数据库时,我应该将'myMP3.mp3'替换为'<?php echo $trackA; ?>'。当我这样做时,我第一次点击时听到了我的歌曲,但是,当我尝试暂停歌曲时,歌曲从头开始,就像播放器刷新一样。

<img src="images/play.png" alt="Play Button" width="400" height="400" onclick="StartOrStop('folder/subfolder/<?php echo $trackA; ?>')"> 

我做错了什么?我试图激活音频标签中的controls只是为了理解发生了什么,控制工作正常但是当我点击图像时,歌曲从一开始就停止了它。

我还尝试在脚本中插入var song但同样重新插入。

在HTML控制台中一切正常,但在php中我只得到trueplay

它能是什么?有任何想法吗?

我找到了这个解决方案,对我来说似乎很有用。 在HTML中我将src添加到我的音频标签中,该标签是从图像中获取src

<img src="images/play.png" alt="Play Button" width="400" height="400" onclick="StartOrStop()">
<audio src="admin/files/<?php echo $trackA; ?>" id="myAudio"></audio>

然后我编辑js

<script>
    function StartOrStop() {
        var audie = document.getElementById("myAudio");

        console.log(audie.paused);
        if (audie.paused == false) {
            console.log('pause');
            audie.pause();
        } else {
            console.log('play');
            audie.play();
        }
    }
</script>

现在,我不知道它为什么会起作用!

0 个答案:

没有答案