2013-06-17 2 views
0

Моя таблица стилей работает над тем, однако, она не работает на firefox. Это дает ошибку, таких как:Javascript метод не работает на Firefox

InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable @ TypeError: document.getElementById(...) is null.

Вот мой код:

<script style="javascript"> 
    function displayRevision2() { 
     for (i = 1; i & lt; j; i++) { 
      foo = document.getElementById('row' + i).innerHTML; 
      substring = foo.substr(0, foo.search("\n") - 1); 
      //displayRevision(substring); 
      if (flag == 1) document.getElementById(substring).style.display = ""; 
      else document.getElementById(substring).style.display = "none"; 
     } 
     if (flag == 1) flag = 0; 
     else flag = 1; 
    } 
</script> 
<script style="javascript"> 
    function dispTD(num) { 
     rowtxt = '&lt;TD class="br" align="middle" id="row' + num + '">'; 
     document.write(rowtxt); 
    } 
</script> 
<script style="javascript"> 
    function dispEndTD() { 
     document.write("&lt;/TD>"); 
    } 
</script> 
+0

Этот рабочий: 'for (i = 1; i < j; i ++)'? – Cherniv

+2

Каждая переменная в этом коде является глобальной, а сущности на самом деле не работают в JS – adeneo

+1

'style =" javascript "'? где вы это видели? Я сильно думаю, что это неправильный синтаксис. –

ответ

0

Это может быть потому, что элемент сценария ищет не существует в документе. Попробуйте проверить, обнаружит ли первый элемент элемент сначала , прежде чем напрямую получить доступ к его атрибутам.

fooElement = document.getElementById('row' + i); 
if(fooElement) foo = fooElement.innerHTML; 
+0

Ошибка: fooElement is null .. Работает на ie, но не в firefox .. – merand

+0

Почему getElementById ('row' + i) не работает? – merand

+0

@merand, потому что нет. Можете ли вы создать jsfiddle своей проблемы? – Starx

Смежные вопросы