jQuery的回调.load不工作的移动设备
$("#sound").load("randomradio.php", function() {
var r = document.getElementById("radio");
r.play();
});
randomradio.php动态创建一个<audio id="radio">
...
并能正常工作在我的电脑网页浏览器。只是不在移动设备上,我不明白为什么。
jQuery应该在移动设备上正常工作。
jQuery手机是完全不同的东西,你不需要它。当您在移动设备上查看时,代码可能会破坏?你有没有试过看你的JavaScript错误?您可以看到错误
您可以在JavaScript控制台中找到这些错误。对于Chrome,您可以通过几种方式打开它:
- 使用键盘快捷键Command - Option - J(Mac)或Control -Shift -J(Windows/Linux)。
- 选择视图>开发人员> JavaScript控制台。
没有Java错误:/ –
这似乎工作。 'test_audio_played = false; (''play',function(){ test_audio_played = true; })[0] .play(); ()函数(){ alert(test_audio_played); },1);' –
那里有奇怪的事情。在pc上工作,test_audio_played的输出是真实的,在手机上,它不会播放并返回false。 –
你确定回调函数根本不工作或者'r.play()'不工作。尝试将'alert(1)'放在回调中,并检查是否得到警报。我想你的回调会被调用,但可能是音频问题。或者可能会被视为零。 – vijayP
警报工作。更进一步。 r.play似乎不起作用。至少不在回调中,因为我在其他地方使用了.play功能,并且它在手机上工作 –
尝试提醒alert($(“#radio”)。)。看看你得到了什么。 – vijayP