Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.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 document.getElementById在Mozilla中不工作_Javascript - Fatal编程技术网

Javascript document.getElementById在Mozilla中不工作

Javascript document.getElementById在Mozilla中不工作,javascript,Javascript,我对Mozilla中的document.getElementByID有问题。在IE和Chrome中,我的代码运行良好 我编写了以下代码: <script type="text/javascript"> function test(x, y) { var text1 = document.getElementById('text1'); for (var i = 0; i < x.length; i++) { text1.innerText += x[i]; // pr

我对Mozilla中的
document.getElementByID
有问题。在IE和Chrome中,我的代码运行良好

我编写了以下代码:

<script type="text/javascript">
function test(x, y) {
var text1 = document.getElementById('text1');
 for (var i = 0; i < x.length; i++) {
    text1.innerText += x[i]; // prints 12345
  }
   text1.innerText += "\ny: " + y; // prints y: 1,2,3,4,5
  }
</script>


 <body>
<form id="form1" runat="server">
<div>
    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</div>
<div id="text1"></div>
</form>
</body>

功能测试(x,y){
var text1=document.getElementById('text1');
对于(变量i=0;i

有人能告诉我为什么这在FireFox中不起作用吗?

我不认为调用
getElementById
是问题所在-如果是,那么你没有给出足够的细节-但我可以告诉你FireFox和其他一些浏览器没有实现
innerText
。对于这些浏览器,您需要直接使用
textContent
或文本节点

您可以使用功能检测确定是否支持
textContent

var textContentOrInnerText = "textContent" in document.body 
                               ? "textContent" : "innerText";
然后,将此变量用于代码中的属性访问:

text1[textContentOrInnerText] += x[i];
请随意将变量缩短为您感觉更舒服的变量。请注意,这两个属性之间的行为存在一些细微的差异,但大多数情况下您不会注意到它们


textContent
是标准行为,这就是为什么我首先在代码中进行测试。

innerText
在DOM标准中的任何地方都没有引用,因此它是非标准的,并且是一种仅限IE的黑客行为

请使用获取文本内容


要获得浏览器支持,请使用库或

不工作方式?我可以看到你的ASP代码(这对我没有帮助),但是
测试功能的触发器在哪里?我这样问是因为所有浏览器都支持
getElementById
。innerText
是非标准的。不要用它。如前所述,使用
.textContent
@Vivekh使用库或垫片支持浏览器。