2013-10-11 2 views
1

Я пытаюсь динамически создать тег div в JavaScript и поместить его в существующий тег div.JavaScript: установка свойства style в теге div в IE7

Этот код отлично работает на FF, Chrome, IE9 и IE10. Код должен работать в IE7.

При установке свойства стиля, IE7 выдает следующее сообщение об ошибке:

Not implemented

Вот код:

<html> 
    <head> 
    </head> 
    <body> 
     <div id="content"> </div> 
     <script> 
     var input = document.createElement('div'); 

     // Above code above executes fine. 
     input.style = "display: block;"; // << This code triggers 
              // the error mentioned above 

     input.className = "container"; 
     input.innerHTML = 'Test'; 
     var container = document.getElementById('content'); 
     container.appendChild(input); 
     </script> 
    </body> 
</html> 

Пожалуйста, дайте мне знать, если я с видом что-то здесь или если этот код должен для изменения в IE7. Спасибо!

+0

Почему вы устанавливаете стиль div 'display: block', если это значение по умолчанию? И почему вы устанавливаете встроенные стили при добавлении класса в div - почему бы просто не включить все необходимые стили в классе? В любом случае, что касается ошибки, попробовали ли вы сначала добавить div в контейнер, а затем установить стиль? Или 'input.style.display =" block ";'? – nnnnnn

+0

@nnnnnn Код изменяет встроенные стили, как требуется дальше по строке. Это уже было закодировано, и я пытаюсь сделать его совместимым с IE7. Попробовал добавить 'div' в контейнер, а затем установить стиль. Тот же результат. 'input.style.display =" block ";' также дает ошибку 'Не удалось получить свойство отображения. Недопустимый аргумент – slayernoah

ответ

2

Используйте вместо этого:

input.style.display = "block"; 

Хотя мне интересно, почему вы пытаетесь сделать это вообще, потому что block уже стиль отображения по умолчанию для <div> элемента.

+0

Когда я пытаюсь 'input.style.display =" block; ";' он дает ошибку: 'Не удалось получить свойство отображения. Недопустимый аргумент. ' – slayernoah

+0

@slayernoah - в вашем документе должно происходить что-то еще, потому что эта форма обращения к свойству стиля отлично работает в IE 7. – jfriend00

+0

Это действительно работает. Благодаря!! Я пытался «input.style.display =« block; »;» вместо 'input.style.display =" block ";'. Это был долгий день! Спасибо! – slayernoah

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