Javascript java脚本我需要帮助来解决一个任务
我正在一个网站上工作,我需要做一个幻灯片文本。我的代码如下:Javascript java脚本我需要帮助来解决一个任务,javascript,Javascript,我正在一个网站上工作,我需要做一个幻灯片文本。我的代码如下: var quotes = new Array(); quotes[0] = "ola mundo"; quotes[1] = "quote2"; quotes[2] = "quote3"; quotes[3] = "quote4"; quotes[4] = "quote5"; console.log(quotes); var counter = 0; function loop() { if (counter > 4
var quotes = new Array();
quotes[0] = "ola mundo";
quotes[1] = "quote2";
quotes[2] = "quote3";
quotes[3] = "quote4";
quotes[4] = "quote5";
console.log(quotes);
var counter = 0;
function loop() {
if (counter > 4) counter = 0;
document.getElementById('textslide').firstElementChild.innerHTML = quotes[counter];
counter++;
console.log(counter);
setTimeout(loop, 2000);
}
loop();
以及HTML:
<div id="textslide">
<p></p>
</div>
如何修复此问题?此错误意味着
document.getElementById('textslide')
未解析,这意味着您的文档(DOM)未完全加载
在执行JavaScript函数之前,请确保DOM已准备就绪:
<body>
:
<div id="textslide">
<p></p>
</div>
<script type="text/javascript">
// your JS code here or in the <head> element
window.onload = loop;
</script>
</body>
:
//您的JS代码在此处或元素中
window.onload=循环;
并从JS代码中删除对循环的调用
有两种方法可以捕获加载事件
如果您不想使用load
事件,请确保您的JavaScript代码位于body
元素的底部
我使用的代码是
<div id="textslide">
<p></p>
</div>
<script type="text/javascript">
// your JS code here or in the <head> element
var quotes = new Array();
quotes[0] = "ola mundo";
quotes[1] = "quote2";
quotes[2] = "quote3";
quotes[3] = "quote4";
quotes[4] = "quote5";
console.log(quotes);
var counter = 0;
function loop() {
if (counter > 4) counter = 0;
document.getElementById('textslide').firstElementChild.innerHTML = quotes[counter];
counter++;
console.log(counter);
setTimeout(loop, 2000);
}
loop();
window.onload = loop;
window.onload = loop;
</script>
//您的JS代码在此处或元素中
var quotes=新数组();
引号[0]=“ola mundo”;
引号[1]=“引号2”;
quotes[2]=“quote3”;
引号[3]=“引号4”;
引号[4]=“引号5”;
console.log(引号);
var计数器=0;
函数循环(){
如果(计数器>4)计数器=0;
document.getElementById('textslide').firstElementChild.innerHTML=quotes[counter];
计数器++;
控制台日志(计数器);
setTimeout(loop,2000);
}
loop();
window.onload=循环;
window.onload=循环;
就像你说的那样?我将你的代码直接粘贴到JSFIDLE中:效果很好。有什么问题吗?仅供参考:Java不是JavaScript。在HTML后面加上脚本标记。或者在文档的事件中调用函数删除循环()代码>行,只有一个window.onload=loop代码>行。
<div id="textslide">
<p></p>
</div>
<script type="text/javascript">
// your JS code here or in the <head> element
var quotes = new Array();
quotes[0] = "ola mundo";
quotes[1] = "quote2";
quotes[2] = "quote3";
quotes[3] = "quote4";
quotes[4] = "quote5";
console.log(quotes);
var counter = 0;
function loop() {
if (counter > 4) counter = 0;
document.getElementById('textslide').firstElementChild.innerHTML = quotes[counter];
counter++;
console.log(counter);
setTimeout(loop, 2000);
}
loop();
window.onload = loop;
window.onload = loop;
</script>