如何创建在导航期间不刷新的iframe?

时间:2014-01-02 13:11:24

标签: javascript jquery html iframe playlist

我想在我的网站上添加一个播放列表:访问者在浏览我的网站时可以听到一些声音。

我想通过在iframe中插入播放列表来实现此目的,但是如何避免刷新iframe。一旦访问了另一个页面,我不希望音乐再次重启。

有没有办法实现这个目标?

2 个答案:

答案 0 :(得分:1)

听起来你正在做类似于SoundCloud的事情。然后开箱即用。

如何让页面保持原位,并将新页面加载到当前页面的容器中。这样,当您“模拟”导航时,您可以让玩家继续运行。当你在那时,你操纵浏览器的历史记录,以便前进和后退按钮仍然有用。

您可以使用HistoryJS,这是一个为旧版浏览器填充History API的库。您可以将jQuery用于所有AJAX内容。您可以将加载页面中的所有链接插入,而不是导航离开页面,通过AJAX加载页面。

// Listen for all link clicks inside the container
$('.container').on('click','a',function(event){

  // Prevent the link from moving the page
  event.preventDefault();

  // This is the location
  var href = this.href;

  // Do AJAX here
  // Manipulate history here

  // Done!
});

现在换一种更简单的方法,为什么不使用弹出窗口呢? :d

答案 1 :(得分:0)

如果访问者转到新页面,您可以执行此操作。 当前的解决方案 - 通过“AJAX”加载新页面,并通过HTLM5 History API将记录记录到历史记录中。结果 - 您的页面没有重新加载,音乐也没有停止。

或者使用多帧网站结构,但这是一个非常糟糕的主意。