我正在使用脚本在我的博客上使用AJAX(https://github.com/swook/jquery-ajaxify-plugin),这样用户可以在浏览不同的页面时通过音乐播放器不间断地收听音乐。
除随机按钮外,一切正常。我想AJAX-ify随机按钮。
问题是,当我点击链接时,页面会重新加载。
您可以在此处查看问题:http://www.julienlussiez.com/p/test_20.html
这是脚本:
<script>
<!--
/*
Random link button- By JavaScript Kit (http://javascriptkit.com)
Over 300+ free scripts!
This credit MUST stay intact for use
*/
//specify random links below. You can have as many as you want
var randomlinks=new Array()
randomlinks[0]="http://www.julienlussiez.com/2013/01/le-repos-du-fou_21.html"
randomlinks[1]="http://www.julienlussiez.com/2012/11/dissonance-3.html"
randomlinks[2]="http://www.julienlussiez.com/2012/10/renaitre.html"
randomlinks[3]="http://www.julienlussiez.com/2013/01/defaillance.html"
randomlinks[4]="http://www.julienlussiez.com/2012/08/fragile-2012.html"
function randomlink(){
window.location=randomlinks[Math.floor(Math.random()*randomlinks.length)]
}
//-->
</script>
<form>
<p><input type="button" name="B1" value="Aléatoire" onclick="randomlink(); return false;" /></p> </form>
谢谢!如果你有一些线索,那将是非常好的!
答案 0 :(得分:1)
例如,当您使用window.location="http://www.google.com/"
时,它会将当前正在查看的网页更改为Google的主页。您需要在iFrame中加载内容或通过AJAX加载内容以阻止页面重新加载。您还可以考虑为您的音乐提供弹出式播放器,每当用户切换页面时,音乐将继续播放。
根据Ajaxify的文档,要通过AJAX加载页面,您需要调用此函数:
$.Ajaxify.loadURL('/path/to/page.html');
尝试使用示例代码中的window.location
替换$.Ajaxify.loadURL('/path/to/page.html');
代码,看看是否会产生影响。
这样的事情:
function randomlink(){
$.Ajaxify.loadURL(randomlinks[Math.floor(Math.random()*randomlinks.length)]);
}