好的,所以我正在创建一个广播播放器,基本上我需要Title,Content div,Next show Div在特定时间刷新,例如上午9点到下午12点。我有一个JQuery代码在某个时间刷新页面,但这不是我想要的。有什么想法吗?
代码:
function refreshAt(hours, minutes, seconds) {
var now = new Date();
var then = new Date();
if(now.getHours() > hours ||
(now.getHours() == hours && now.getMinutes() > minutes) ||
now.getHours() == hours && now.getMinutes() == minutes && now.getSeconds() >= seconds) {
then.setDate(now.getDate() + 1);
}
then.setHours(hours);
then.setMinutes(minutes);
then.setSeconds(seconds);
var timeout = (then.getTime() - now.getTime());
setTimeout(function() { window.location.reload(true); }, timeout);
}
然后我只需通过在我的页面上插入以下内容来调用refreshAt函数
<script type="text/javascript">refreshAt(04,30,0);</script> //page refreshes at 4:30am.
所以这会刷新整个页面。我只需要刷新Title和2个div。 我需要在代码中添加/更改什么。
答案 0 :(得分:1)
这将在间隔过后调用您当前的网址,并重置您的title
和div
内容。
你必须写下这样的东西:
function refreshAt(hours, minutes, seconds) {
var now = new Date();
var then = new Date();
if(now.getHours() > hours || (now.getHours() == hours && now.getMinutes() > minutes) || now.getHours() == hours && now.getMinutes() == minutes && now.getSeconds() >= seconds) {
then.setDate(now.getDate() + 1);
}
then.setHours(hours);
then.setMinutes(minutes);
then.setSeconds(seconds);
var timeout = (then.getTime() - now.getTime());
setTimeout(function() {
$.get( window.location.pathname, function( data ) {
$('title') = $(data).filter('title').text();
$('.DIV_CLASS') = $(data).filter('.DIV_CLASS').html();
alert( "Load was performed." );
});
}, timeout);
}
注意:此脚本使用jQuery,因此请包含最新的jQuery库。
答案 1 :(得分:0)
你可以试试这个:
setTimeout(function() {
document.title = "new title";
$(".divname").text("new div text");
}, timeout);
答案 2 :(得分:0)
您可以查看jQuery的load方法。
通过使用is,您可以加载div的内容。
setTimeout(function() {
$("#youfirstdivid").load("url1");
$("#youseconddivid").load("url2");
$('title').text("new title");
}, timeout);
不要忘记将代码包装在
中$(function(){
//you code goes here
});
如果你想以某个固定的间隔刷新它,那么你可以使用setInterval而不是setTimeout
答案 3 :(得分:0)
请尝试以下代码:
setTimeout(function(){
$('#divid').load("pageurl #divid" >*",function(){
});
}, 6000);
你的div在6秒后重新加载。