网页自动刷新3次,不知道是用js可以实现的吗

我想让我的网站打开之后自动刷新3次,只三次连续刷新,求大侠指教

  可以的,但是必须通过记录刷新次数,现在可以用的有两个方法(这里的刷新不能通过meta标签方式,只能通过设置js的window.location.href来转向)
  方法就是参数法和cookie法,程序都经自己测试没有问题,没有加注释,如果有不懂的地方可以追问.
  逻辑部分全部封装到了 refresh函数里,可以直接调用,参数param就是记录刷新次数的参数名,用于url和cookie,根据情况可以自定义,refreshNum是刷新次数.
  1,url参数法,通过该参数记录当前次数,判断如果小于3,继续刷新,如果>=3.停止.
  <script type="text/javascript">
  function refresh(param,refreshNum){
  var url=window.location.search;
  var str=window.location.href;
  if(url.length>0){
  urls=url.replace("?","").split("&");
  for(i=0;i<urls.length;i++){
  if(urls[i].split("=")[0]==param){
  if(parseInt(urls[i].split("=")[1])<refreshNum){
  urls[i]=param+"="+(parseInt(urls[i].split("=")[1])+1);
  window.location.href=str.split("?")[0]+"?"+urls.join("&");
  }
  else{
  break;
  }
  }
  }
  }
  else{
  if(str.indexOf("?")!=-1){
  str=str.replace("?","");
  }
  window.location.href=str+"?"+param+"=1";
  }
  }

  refresh('a',3);
  </script>

  2,记录cookie法,通过cookie保存页面的刷新次数,判断方式同1.测试该方法时请清空浏览器cookie缓存,否则可能有一定影响.
  <script type="text/javascript">
  function refresh(param,refreshNum){
  if(document.cookie.length>0){
  cookies=document.cookie.split(';');
  for(i=0;i<cookies.length;i++){
  if(cookies[i].split('=')[0]==param){
  if(parseInt(cookies[i].split('=')[1])<refreshNum){
  cookies[i]=param+"="+(parseInt(cookies[i].split('=')[1])+1);
  document.cookie=cookies.join(';');
  window.location.href=window.location.href;
  }
  else{
  break;
  }
  }
  }
  }
  else{
  document.cookie=param+"=1";
  window.location.href=window.location.href;
  }
  }
  refresh('a',3);
  </script>
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-28
光用JS。。只能用cookie来达成了。。。
但是,cookie一记录~要清除了,才能保证下次还有用~而且浏览器需要对cookies支持~
另外,可以用ajax来完成~服务端记录刷新次数~
反正cookies算一个思路~
http://www.w3school.com.cn/js/js_cookies.asp
---------------------------------------
我换了个jquery的~希望有用吧~
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script>
<script src="jquery.cookie.js" type="text/javascript"></script> <!--jquery.cookie需要下载哈,地址:http://plugins.jquery.com/project/Cookie -->
</head>
<body>
<div id="info">刷新完毕</div>

<script type="text/javascript">
var cookie_name = 'refresh_time';
var refresh_time = $.cookie(cookie_name);
//alert(refresh_time);
if(!refresh_time)
{
$.cookie(cookie_name,1,{ expires: 1 });
$("#info").html('刷新第'+$.cookie(cookie_name)+'次');
alert('点击我进行下一次刷新');
location.reload();
}
else
{
if(refresh_time<3){
$.cookie(cookie_name,parseInt(refresh_time)+1,{ expires: 1 });
$("#info").html('刷新第'+$.cookie(cookie_name)+'次');
alert('点击我进行下一次刷新');
location.reload();
}
}
</script>
</body>
</html>
相似回答