Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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 Soundmanager 360Ui在刷新页面后有时不初始化_Javascript_Jquery_Html_Soundmanager2 - Fatal编程技术网

Javascript Soundmanager 360Ui在刷新页面后有时不初始化

Javascript Soundmanager 360Ui在刷新页面后有时不初始化,javascript,jquery,html,soundmanager2,Javascript,Jquery,Html,Soundmanager2,我正在尝试使用soundmanager 2初始化360Ui音频播放器。 在第一个页面加载中,玩家的出现与预期一致。然后,如果使用Ctrl+R或单击刷新按钮刷新页面,soundmanager似乎没有初始化 我已经创建了这些div: <div id="pl1" class="ui360" > <a id="a1" href="#"></a> </div> <div id="pl2" class="ui360"> <a

我正在尝试使用soundmanager 2初始化360Ui音频播放器。 在第一个页面加载中,玩家的出现与预期一致。然后,如果使用Ctrl+R或单击刷新按钮刷新页面,soundmanager似乎没有初始化

我已经创建了这些div:

<div id="pl1" class="ui360" >
    <a id="a1" href="#"></a>
</div>

<div id="pl2" class="ui360">
    <a id="a2" href="#"></a>
</div>

<div id="pl3" class="ui360">
    <a id="a3" href="3"></a>
</div>
这里还有loadpls功能:

function loadpls(){
    // Loading audio players
    $.ajax({
        url: '../admin/classes/classController.php',
        type: 'POST',
        data: {method:'loadAudioPl'},
        dataType: 'json',
        error: function(jqXHR, error, errorThrown){console.log(jqXHR+" "+error+" "+errorThrown);},
        success: function(json){
            if(json.status == 1){
                if(json.url1 != ''){
                    $('#a1').attr("href", json.url1);
                    $('#pl1' ).offset({top: json.y1, left: json.x1});
                    $('#pl1').show();
                }

                if(json.url2 != ''){
                    $('#a2').attr("href", json.url2);
                    $('#pl2' ).offset({top: json.y2, left: json.x2});
                    $('#pl2').show();
                }

                if(json.url3 != ''){
                    $('#a3').attr("href", json.url3);
                    $('#pl3' ).offset({top: json.y3, left: json.x3});
                    $('#pl3').show();
                }             
           }
        }
    });

} 
嗯。现在让我们假设这是我们第一次访问该页面。我们在玩家的图标中做了一个“检查元素”。通过查看上面的代码,我们可以看到soundmanager已成功初始化:

<div id="pl1" class="ui360" style="display: block; top: 0px; left: -100px; background-image: none;">
<div class="sm2-360ui">
<canvas class="sm2-canvas" width="50" height="50"></canvas> 
<span class="sm2-360btn sm2-360btn-default"></span> 
<div class="sm2-timing alignTweak"></div> 
<div class="sm2-cover"></div>
</div><a id="a1" href="http://dev.phoebe/audioPlayer/soundmanager/_mp3/rain.mp3" class="sm2_link"></a>
</div>
有时,如果我们刷新该页面,音频播放器将消失,现在页面中某个位置的“inspect元素”的结果显示:

<div id="pl1" class="ui360" style="display: block; top: 0px; left: -100px; background-image: none;">
    <a id="a1" href="http://dev.phoebe/audioPlayer/soundmanager/_mp3/rain.mp3"></a>
</div>

我把这种行为理解为soundmanager的非初始化,但我无法进一步解释。另外,我考虑的另一个问题是,如果我让控制台Ctrl+Shift+i打开,播放器在刷新后会出现更多次。

因此,最后似乎我修复了它。 这里是如何

soundmanager的初始化确实存在问题,可能是因为我使用了这样的代码:

<div id="pl1" class="ui360" >
  <a id="a1" href="#"></a>
</div>
<div id="pl1" class="ui360" >
  <a id="a1" href="#"></a>
</div>
<div id="pl1" class="ui360" >
    <a id="a1" href="test.mp3"></a>
</div>