Почему тег Chrome автоматически удаляет тег сценария?
Каждый.
Я не использую jQuery. Я создаю script
пометить и добавить его к head
тег для получения данных JSONP. После выполнения функции обратного вызова JSONP script
тег, который только что добавлен в head
метка мной автоматически удаляется браузером (Chrome). Почему тег сценария автоматически удаляется Chrome? Я не пишу коды для удаления этого script
тег.
Спасибо.
2 ответа
Это не так. Наиболее распространенная причина, по которой люди считают, что изменения DOM не выполняются, заключается в том, что они смотрят на "источник просмотра", а не на фактическую панель DOM. Убедитесь, что, когда вы ищете это, вы смотрите на вкладку "Элементы" в Dev Tools. "Просмотр исходного кода" показывает исходный HTML-код, доставленный с сервера, а не DOM и любые изменения, которые вы, возможно, внесли в него.
Если элемент действительно исчезает, есть код, удаляющий его. Chrome не удаляется произвольно script
элементы ( доказательство). Некоторые возможности:
- Другой код на странице удаляет его.
- Вы добавили его как элемент-наследник чего-либо, и его родитель (или предок) был удален.
- Вы добавили его как элемент-наследник чего-либо, а затем обновили этот родительский / родительский элемент новым содержимым, заменив его предыдущее содержимое (например, через
innerHTML
или похожие).
В 2 и 3 выше код удаляет script
элемент как побочный продукт удаления или обновления своего родителя / предка.
У меня такая же проблема. Оказывается, я думаю, что jQuery делает что-то негласное для удаления динамических скриптов. Если я не включу jQuery на страницу, он останется в DOM. Тем не менее, новые версии jQuery (1.9.0 и выше) не создают эту проблему.