Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:innerHTML不工作_Javascript_Html - Fatal编程技术网

Javascript:innerHTML不工作

Javascript:innerHTML不工作,javascript,html,Javascript,Html,第一个innerHTML代码可以正常工作,但是第二个innerHTML代码会导致问题。其值设置为未定义 names=[“男人”、“男人2”、“男人3”]; textdata=[“RISIKESI”,“这项服务太棒了”, “我用过的最好的RISIKESI!” ]; i=1; 函数anim(){ text=document.getElementById(“theText”); text.innerHTML=textdata[i]; name=document.getElementById(“the

第一个innerHTML代码可以正常工作,但是第二个innerHTML代码会导致问题。其值设置为未定义

names=[“男人”、“男人2”、“男人3”];
textdata=[“RISIKESI”,“这项服务太棒了”,
“我用过的最好的RISIKESI!”
];
i=1;
函数anim(){
text=document.getElementById(“theText”);
text.innerHTML=textdata[i];
name=document.getElementById(“theName”);
name.innerHTML=名称[i];
如果(i==2){
i=0;
}否则{
i++;
}
}
var int=设定间隔(动物,2000年)

  • RISIKESI

    男人


您没有使用
var
,因此您试图将
name
设置为全局窗口,但
窗口已存在,并且(因为它在内部是用setter定义的)只能设置为字符串。HTML元素对象被转换为字符串,此时其上的
innerHTML
属性不再具有任何特殊意义

声明变量以创建局部范围变量时,请使用
var


您可以使用来突出显示JS中可能出现的问题,如此问题,并将某些问题(如此问题)转化为错误,这些错误将在浏览器的开发人员工具中突出显示。

这是因为变量名为
name
。您没有使用关键字
var
,因此您的变量现在是全局变量。它现在与
window.name
冲突。更改变量的名称,它应该可以正常工作

而且,无论何时您想要初始化局部变量,总是使用
var
关键字

var names = ["Man", "Man 2", "Man 3"];
var textdata = ["RISIKESI", "This service is amazing",
"Best RISIKESI I have so used!"];
var i =1;
var text = document.getElementById("theText");
var nameEl = document.getElementById("theName");
function anim(){
   text.innerHTML = textdata[i];
   nameEl.innerHTML= names[i];
   i!=2 ? i++ : i=0
}

var int = setInterval(anim, 2000);

//

您需要使用
var
声明全局和局部变量。您与浏览器的
窗口.name
属性冲突。我觉得这是个骗局,但现在找不到。使用
名称
以外的内容或将变量作用于函数,问题就会消失。注意:使用
var
声明局部变量,使用一致的缩进,使用空格时要小心(id=“theName”,i=1;,等等)。用一个简单的例子来证明您的说法:)