Javascript document.write странное поведение в Firefox - PullRequest
2 голосов
/ 17 июля 2010

Когда я пишу следующий код прямо на мою html-страницу под тегом сценария, строка «test» добавляется на мою страницу без замены остального содержимого (1):

document.write("test");

Однако, если я помещаю этот же код в отдельный файл javascript, например (2):

<script src="http://127.0.0.1/whatever.js" type="text/javascript"></script>

Внезапно этот же код переписывает всю мою страницу.

Есть ли способ выполнить документ.написать () из удаленного файла и получить результат в (1)?

Спасибо за ваше время.

Ответы [ 3 ]

3 голосов
/ 17 июля 2010

Если вы используете doc.write во время рендеринга страницы, она вставит или добавит строку.Если вы используете doc.write после его рендеринга или после window.onload, он по сути снова начнет процесс рендеринга и перезапишет страницу.

Я предполагаю, что вы получаете асинхронное поведение при загрузке скриптаи это не выполняется до после загрузки.Я не могу воссоздать твою проблему.

0 голосов
/ 17 июля 2010

Более безопасное решение - добавить элемент страницы на страницу - это всегда должно работать

0 голосов
/ 17 июля 2010

Возможно, вы включили ваш скрипт вверху страницы.Где он получает материал document.write () и таким образом записывает текст вместо поведения добавления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...