Javascript:将计时器设置为每分钟运行不同的链接

Javascript:将计时器设置为每分钟运行不同的链接,javascript,Javascript,在这个程序中,我创建了对象及其实例,并将这些实例存储在数组中。我通过获取数组长度的分钟模来检索数组索引。我试图显示在div标签链接,我应该能够看到不同的链接每分钟。点击链接后,它会显示不同的url。并将计时器设置为每分钟运行一次。为此,我创建了setInterval()。但它似乎不起作用。有人能帮我吗 代码: myDiv先生{ 宽度:750px; 高度:150像素; 边框:#CED8BC 3px实心; 边界半径:20px; 位置:绝对位置; 最高:30%; 左:20%; } p组{ 文本对齐:

在这个程序中,我创建了对象及其实例,并将这些实例存储在数组中。我通过获取数组长度的分钟模来检索数组索引。我试图显示在div标签链接,我应该能够看到不同的链接每分钟。点击链接后,它会显示不同的url。并将计时器设置为每分钟运行一次。为此,我创建了setInterval()。但它似乎不起作用。有人能帮我吗

代码:


myDiv先生{
宽度:750px;
高度:150像素;
边框:#CED8BC 3px实心;
边界半径:20px;
位置:绝对位置;
最高:30%;
左:20%;
}
p组{
文本对齐:居中;
字体系列:monospace;
字体大小:30px;
}
a{
文本对齐:居中;
文字装饰:无;
颜色:#3bb570;
}   
a:悬停{
颜色:#efa5db
}
lab15
点击链接查看网站

功能站点(url、网站名称){ this.the_url=该_url; this.website\u name=网站名称; } var myWebsite=新站点(“http://www.cnn.com/","CNN",; var myWebsite2=新站点(“http://www.bbc.com/news“,”英国广播公司“; var myWebsite3=新站点(“http://www.foxnews.com/","福克斯新闻",; var myWebsite4=新站点(“http://abcnews.go.com/","ABC新闻",; var myWebsite5=新站点(“https://www.cbsnews.com/“,”哥伦比亚广播公司新闻“); var实例=新数组(myWebsite、myWebsite2、myWebsite3、myWebsite4、myWebsite5); 设置间隔(changeLink,60000); 函数changeLink(){ var n=新日期().getMinutes(); var index=n%instances.length var site=实例[索引] var计数器=0; var ele=document.getElementbyId(“链接”); ele.innerHTML=实例[计数器]; 计数器++; if(计数器>=instances.length){ 计数器=0; } var a=document.createElement('a'); var myDiv=document.getElementbyId(“div”); a、 href=site.html\u url; a、 innerHTML=site.website\u名称 myDiv.appendChild(a); 文件.body.appendChild(myDiv); }
Move
var计数器=0退出函数

此外,如前所述,您必须通过以下方式将
大写:

var ele = document.getElementById("link");
/* ... */
var myDiv = document.getElementbyId("div");
最终代码:

var counter = 0;

function changeLink() {

  var n = new Date().getMinutes();
  var index = n % instances.length
  var site = instances[index]
  //var counter = 0;

  var ele = document.getElementById("link");  //Capitalize By
  ele.innerHTML = instances[counter];
  counter++;

  if (counter >= instances.length) {
    counter = 0;
  }

  var a = document.createElement('a');
  var myDiv = document.getElementById("div"); //Capitalize By
  a.href = site.the_url;
  a.innerHTML = site.website_name
  myDiv.appendChild(a);
  document.body.appendChild(myDiv);

}

修复了分号和
getElementById
typos。这是工作代码

功能站点(url、网站名称){
this.the_url=该_url;
this.website\u name=网站名称;
}
var myWebsite=新站点(“http://www.cnn.com/","CNN",;
var myWebsite2=新站点(“http://www.bbc.com/news“,”英国广播公司“;
var myWebsite3=新站点(“http://www.foxnews.com/","福克斯新闻",;
var myWebsite4=新站点(“http://abcnews.go.com/","ABC新闻",;
var myWebsite5=新站点(“https://www.cbsnews.com/“,”哥伦比亚广播公司新闻“);
var实例=新数组(myWebsite、myWebsite2、myWebsite3、myWebsite4、myWebsite5);
//调用changeLink一次以在页面加载时显示
changeLink();
//时间间隔更改为3秒,因此您无需等待一分钟的结果
设置间隔(changeLink,3000);
函数changeLink(){
var n=新日期().getMinutes();
var index=n%instances.length;
var site=实例[索引];
var计数器=0;
var ele=document.getElementById(“链接”);
计数器++;
if(计数器>=instances.length){
计数器=0;
}
var a=document.createElement('a');
var myDiv=document.getElementById(“div”);
a、 href=site.html\u url;
a、 innerHTML=site.website\u名称;
ele.innerHTML='';
ele.appendChild(a);
}
.myDiv{
宽度:750px;
高度:150像素;
边框:#CED8BC 3px实心;
边界半径:20px;
位置:绝对位置;
最高:30%;
左:20%;
}
p组{
文本对齐:居中;
字体系列:monospace;
字体大小:30px;
}
a{
文本对齐:居中;
文字装饰:无;
颜色:#3bb570;
}
a:悬停{
颜色:#efa5db
}

lab15
点击链接查看网站


document.getElementbyId()
应该是
document.getElementbyId()
@ChrisHappy不知道你的意思是什么?@ChrisHappy在不使用
.getElementbyId()的地方发布链接的目的是什么
在您的答案中?@ChrisHappy至少在休息之前为OP更正您的答案?“将
var counter=0;
移出函数。”这不是问题代码的唯一问题<代码>文档。getElementbyId()不是function@pari现在呢?刚被Guest271314“启发”后更新,您错过了
var ele=document.getElementbyId(“链接”)@guest271314谢谢!没有你我该怎么办;)@guest271314中的小姐?让我试着在加载页面时告诉你为什么它没有直接显示任何链接?更新了答案。在设置计时器之前,只需调用
changeLink()
var counter = 0;

function changeLink() {

  var n = new Date().getMinutes();
  var index = n % instances.length
  var site = instances[index]
  //var counter = 0;

  var ele = document.getElementById("link");  //Capitalize By
  ele.innerHTML = instances[counter];
  counter++;

  if (counter >= instances.length) {
    counter = 0;
  }

  var a = document.createElement('a');
  var myDiv = document.getElementById("div"); //Capitalize By
  a.href = site.the_url;
  a.innerHTML = site.website_name
  myDiv.appendChild(a);
  document.body.appendChild(myDiv);

}