我有一个在 HTML 中工作正常的音频播放器,但是当我从 PHP echo 调用 if 时,它似乎没有获取 div ID 的名称,因此它不会播放我的音频。 这是我的代码:
// Show audio
if ($sObj->get('audio') != null) {
$sAudio = $sObj->get('audio');
$audioURL = $sAudio->getURL();
$playerName = 'player';
echo '
<audio id="player" ontimeupdate="updateTime()" src="'.$audioURL.'"></audio>
<a class="btn btn-primary btn-round" id="songPlay" onclick="play('.$playerName.')"> --> THE ISSUE SEEMS TO BE HERE...
<i class="fa fa-play"></i></a>
<a class="btn btn-primary btn-round" id="songPause" onclick="pause()"><i class="fa fa-pause"></i></a>
<a class="btn btn-primary btn-round" id="songStop" onclick="stopSong()"><i class="fa fa-stop"></i></a>
<div id="songTime"><strong>0:00 / 0:00</strong></div>
<div id="songSlider" onclick="setSongPosition(this,event)"><div id="trackProgress"></div></div>
';
}
由于某种原因,播放器无法播放我的音频,音频 URL 是正确的,因为如果我在 HTML 文件中使用相同的音频标记和代码,它就可以正常工作。
我在 PHP 中做错了什么?
谢谢!
最佳答案
PHP 字符串不是多行的。这意味着您不能简单地插入换行符。
您必须使用heredoc语法:
$str = <<<STR1
line1
line2
line3
...
STR1;
或者您可以使用 "\n"
分割行:
$str =
"line1\n" .
"line2\n" .
"line3";
您仍然可以插入变量:
echo <<<HTML
<audio id="player" ontimeupdate="updateTime()" src="$audioURL"></audio>
<a class="btn btn-primary btn-round" id="songPlay" onclick="play('$playerName')"><i class="fa fa-play"></i></a>
<a class="btn btn-primary btn-round" id="songPause" onclick="pause()"><i class="fa fa-pause"></i></a>
<a class="btn btn-primary btn-round" id="songStop" onclick="stopSong()"><i class="fa fa-stop"></i></a>
<div id="songTime"><strong>0:00 / 0:00</strong></div>
<div id="songSlider" onclick="setSongPosition(this,event)">
<div id="trackProgress"></div>
</div>
HTML;
关于javascript - PHP stringID 未从 echo 中读取 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49389140/