浏览时停止刷新特定div

时间:2011-11-20 12:14:19

标签: html persistent audio-player

我正在我的网站上工作,我有一个音乐播放器。令人讨厌的部分是,当我浏览到另一个页面时,播放器停止并从开始... 我想要的是拥有一个持久的音乐播放器。那么当浏览到另一个页面时,如何使包含音乐播放器的div保持静态? 网站:demo(dot)zdringhi-art(dot)com

谢谢!

4 个答案:

答案 0 :(得分:1)

WEB是无国籍的。 因此,如果你移动到另一个页面,div就无法保持不变。

虽然你可以做的是......嗯如下。 有一个页面,并在那里有你的div。 然后通过ajax加载页面的其他部分。 此外,当点击链接时,只会加载部分页面。 似乎编码过多,但是唯一可行的选择。 例如拿Facebook#/ p>

答案 1 :(得分:1)

Gurav shah是正确的,网络是无状态的,所以如果你要更改页面,你只有几个选项。

框架,是的,在任何人喊出这是他们的设计之前。您可以将音乐播放器放在一个HTML框架中,将其余部分放在另一个HTML框架中,这样当您四处移动时,您只会更新主要内容框架。

或者像gurav建议的那样,将整个网站打造成一页并用Ajax更新内容,这样音乐Div就不会改变。

单击链接时,将播放器的当前位置传递到下一页。

     <a href="#" onclick="window.location.href='{new page}?musicpositionseconds="+getsecond()+"'; return false">to another page</a>

其中getseconds()返回音乐播放器的当前位置并将其传递到下一页,然后在加载该页面时,您从URL读取变量并从那里启动播放器。

答案 2 :(得分:1)

使用框架是一种解决方案,但由于您在网站上使用JQuery,因此应该查看.loadhttp://api.jquery.com/load/)。它允许您加载另一个页面的内容并将其放在当前页面的某个位置。像这样:

$(function () {
  $("a").click(function (e) {
    e.preventDefault(); // don't follow the link
    $("#ja-container").load($(this).attr("href") + " #ja-container");
    /* Load the new page using ajax request, take the content in #ja-container from that new page and put it in the current page's #ja-container */
  });
});

这不是一个完整的解决方案:当有人点击音乐会时 - &gt;议程你应该保持议程可见。

就个人而言,我不想强​​迫背景音乐,而是喜欢看一个播放音乐的人的Youtube视频页面。

答案 3 :(得分:0)

嗯,是的HTTP是无状态的。你可以做的是创建一个cookie,并不断地用播放器的当前位置/时间值更新它。这样,当您转到任何其他页面时,您可以从cookie中读取时间/位置。

否则,在一个cookie少的方法中,发送AJAXed位置/时间数据来回服务器 - 客户端将是太多的网络。

如果我这样做的话,我会以cookie方式进行。