Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 音频src保存在cookie上,但未播放_Javascript_Jquery_Html_Audio - Fatal编程技术网

Javascript 音频src保存在cookie上,但未播放

Javascript 音频src保存在cookie上,但未播放,javascript,jquery,html,audio,Javascript,Jquery,Html,Audio,我的播放列表中有5首歌曲,当我单击下一首歌曲时,我会看到当前src已保存在cookie上,但当我重新加载浏览器时,当前src不会自动播放。在浏览器控制台网络选项卡-启动器中,我找到了其他 var song = document.getElementsByTagName('audio')[0]; var played = false; var runsrc = $.cookie("savesrc"); function update() { if(!played){ if

我的播放列表中有5首歌曲,当我单击下一首歌曲时,我会看到当前src已保存在cookie上,但当我重新加载浏览器时,当前src不会自动播放。在浏览器控制台网络选项卡-启动器中,我找到了
其他

var song = document.getElementsByTagName('audio')[0];
var played = false;
var runsrc = $.cookie("savesrc");
function update() {
    if(!played){
         if(runsrc){
           song.addEventListener("canplay",function(){runsrc&&(song.src=runsrc,runsrc=null);
            });
            song.play();
            played = true;
            }
       else {
            song.play();
            played = true;
            }
        }
        else {
        $.cookie('savesrc', song.src);
        }
      }
  setInterval(update,0);

您使用的jQuery cookie扩展是什么?如果未设置cookie,它将返回undefined,因此您的if应该是:
if(typeof runsrc!=“undefined”)
您可以添加
console.log(“嘿”)
在您的身体状况中,在
歌曲.play()之前稍早一点。
?通过这种方式,我们可以了解问题是否与此相关。我使用@brioshejecookie set working。但控制台中的歌曲未播放且无任何错误,仅在浏览器控制台网络选项卡-启动器中获取
其他
@brioshejeI怀疑问题可能与canplay事件有关。首先,将设置的interval second参数更改为1(1毫秒),然后插入
song.play()在canplay回调函数中,紧跟在:
runsrc&&(song.src=runsrc,runsrc=null)