我正在我的网站上工作,我有一个音乐播放器。令人讨厌的部分是,当我浏览到另一个页面时,播放器停止并从开始... 我想要的是拥有一个持久的音乐播放器。那么当浏览到另一个页面时,如何使包含音乐播放器的div保持静态? 网站:demo(dot)zdringhi-art(dot)com
谢谢!
答案 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,因此应该查看.load
(http://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方式进行。