Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не работает скрипт под Mozilla
 
 автор: GлюК   (21.04.2006 в 22:40)   письмо автору
1.9 Кб
 
 

Подскажите, пожалуйста, почему этот скриптик под Firefox Mozilla может не работать, а под IE иногда выдавать такую ошибку:
Строка: 2
Символ: 5
parent.m.p.innerHTML – есть NULL или не является объектом
l.php
И ещё такую под IE:
parent.b.document.bo.r - есть NULL или не является объектом
в файле n.php
Под Opera работает всё нормально.

   
 
 автор: 12345   (22.04.2006 в 23:33)   письмо автору
 
   для: GлюК   (21.04.2006 в 22:40)
 

Приведите html, plz

   
 
 автор: GлюК   (23.04.2006 в 12:42)   письмо автору
 
   для: 12345   (22.04.2006 в 23:33)
 

Сделал ещё проще:
Файл с 2 фреймами, 1 из них нулевой.
Код первого (в который будет посылаться сообщение):

<HTML>
 <HEAD>
 </HEAD>
 <body>
  <div id="p">
  </div>
 </body>
</html>

Код второго (который посылает сообщение):

<script language="JavaScript">
 parent.m.p.innerHTML="привет";
</script>

Код главной странички (где формируются фреймы):

<html>
 <HEAD>
    <frameset rows="*,0">
     <frame src="m.htm" name="m">
     <frame src="l.htm" name="l">
    </frameset>
 </HEAD>
 <body>
 </body>
</html>

Под IE выдаёт:
parent.m.p – есть NULL или не является объектом.
Под Mozilla:
parent.m.p has no properties.
Подскажите, где косяк?
Теперь работает только под Opera.

   
 
 автор: RMW   (23.04.2006 в 14:03)   письмо автору
 
   для: GлюК   (23.04.2006 в 12:42)
 

У меня под IE и Opera нормально работает. Если конечно не
открывать отдельно l.htm (который о паренте ничего на знает).
А вообще убери BODY из FRAMESET а FRAMESET вытащи из HEAD'а.

   
 
 автор: GлюК   (23.04.2006 в 14:11)   письмо автору
 
   для: RMW   (23.04.2006 в 14:03)
 

В IE я уже понял, что работает, просто не тот файлик открывал! А вот главная-то проблема в Mozilla! Там по-прежнему не работает!!! Выдаёт ошибку, которую я уже писал выше! Что вобще эта ошибка значит?

   
 
 автор: RMW   (23.04.2006 в 14:27)   письмо автору
 
   для: GлюК   (23.04.2006 в 14:11)
 

Я не совсем точно выразился. Правильная структура
файла должна быть такой:

<html>

  <head>
  </head>

  <frameset>
  </frameset>

</html>

И никаких body. Возможно из-за этого и не работает.
Испытай:)

   
 
 автор: GлюК   (23.04.2006 в 15:53)   письмо автору
 
   для: RMW   (23.04.2006 в 14:27)
 

Я понял, но оно всё-равно не работает! Как я понимаю, Mozilla innerHTML не так воспринимает, хотя мне говорили, что только Mozilla с ним правильно и работает! Может как-нибудь по-другому можно эту идею реализовать, без InnerHTML??? Хотя лучше с ним разобраться...

   
 
 автор: RMW   (23.04.2006 в 17:23)   письмо автору
 
   для: GлюК   (23.04.2006 в 15:53)
 

Попробуй так:

parent.m.document.getElementById("p").innerHTML="привет";

   
 
 автор: GлюК   (23.04.2006 в 20:11)   письмо автору
 
   для: RMW   (23.04.2006 в 17:23)
 

RMW, блин, я пробовал так, только без document. Не работало! А так заработало!!! Спасибо огромное. Кстати, с getElementById всегда нужно использовать document?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования