| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Вёрстка веб-сайтов > Переносимый Java-Script |
| Автор: rarelang 23.7.2004, 14:31 |
| Всем привет, Помогите мне пожалуйста с решением следующей проблемы, я пишу HTML документ (вообщем детали не важны), и мне необходимо чтобы он нормально просматривался в большинстве браузеров. Я тестирую тестовую страницу на следующих браузерах: 1. Internet Explorer 6.0 2. Netscape Navigator 6.01 3. Mozilla 1.5 4. Galeon 1.2.7 5. Voyager 6. Opera 7.23 7. Konqueror 3.1.4 У меня есть следующий тестовый HTML код: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><title >CBS</title><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"></head> <script language="JavaScript" src="pages.js"></script> <body onLoad="MBLoad()"> <div id="MainBody" name="MainBody"> <H1>No Java-Script</H1> </div> </body> </html> И следующий JS код: function MBLoad(){ document.all("MainBody").innerHTML=navigator.userAgent; } Результат выполнения следующий,- Internet Explorer, Opera и Konqueror успешно выполняют java-script код, тогда как Mozilla, Netscape, Galeon и Voyager выполнять этот код отказываются и просто выводят содержимое div id="MainBody" name="MainBody"><H1>No Java-Script</H1></div> т.е. фразу "No Java-Script". Насколько я понимаю и как следует из сообщения в JS-консоли в Mozilla, Netscape и.т.д. не воспринимают document.all("MainBody").innerHTML, так же как в прочем и обращение через ID. Ввиду того что Java-Script изобретен Netscape то по логике у него должны быть средства как то достукиваться к свойству innerHTML объектов DOM, подскажите мне пожалуйста как я могу это сделать, чтобы это работало во всех перечисленных мною браузерах или хотя бы в Netscape. Заранее спасибо за любой cовет. |
| Автор: Ignat 23.7.2004, 14:46 |
| document.getElementById("MainBody").innerHTML=navigator.userAgent; |
| Автор: Се ля ви 23.7.2004, 17:51 | ||
Лучше писать как принято в моделе DOM:
|
| Автор: dr.ZmeY 24.7.2004, 20:47 |
| Используй метод кодирования браузеров eval() |