我想在我的网页加载时播放欢迎语音,但不要重新加载网页

时间:2013-12-23 23:49:15

标签: javascript-events

我已在我的网页上为新访客添加了自动播放欢迎语音或音频。但是,当访问者重新加载网页时,欢迎语音再次播放。我不想在访问者重新加载网页时再次播放。有人可以指导我吗? 我的代码在这里:

    <script type="text/javascript">
 var audioElement = document.createElement('audio');
 audioElement.setAttribute('src', 'filepath/audiofile.wav');
 audioElement.play();
</script>

2 个答案:

答案 0 :(得分:4)

您需要做的是设置一个用作标记的cookie,以检查页面是否已加载,

<script>

    function setCookie(cname,cvalue,exdays)
    {
    var d = new Date();
    d.setTime(d.getTime()+(exdays*24*60*60*1000));
    var expires = "expires="+d.toGMTString();
    document.cookie = cname + "=" + cvalue + "; " + expires;
    }

    function getCookie(cname)
    {
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for(var i=0; i<ca.length; i++) 
      {
      var c = ca[i].trim();
      if (c.indexOf(name)==0) return c.substring(name.length,c.length);
      }
    return "";
    }


    window.onload=function(){
    if(getCookie('hasPlayed') != null){

    var audioElement = document.createElement('audio');
     audioElement.setAttribute('src', 'filepath/audiofile.wav');
     audioElement.play();
    setCookie('hasPlayed', true, NUMBER-OF-DAYS-TO-KEEP-COOKIE);
    }

};

</script>

答案 1 :(得分:0)

您可以使用网络存储来了解该网页是首次访问还是重新加载。 http://www.html5rocks.com/en/features/storage