Android не уважает удаление метатега?
Я создал образец сценария для добавления и удаления метатегов из головы. Но Android 2.2, похоже, не уважает его удаление. Тем не менее, он учитывает добавление метатэга, например, по щелчку. Как мне заставить его уважать удаление тега и вернуться к стандартному окну просмотра через javascript?
<script type="text/javascript">
$(document).ready(function(){
function initMeta(){
var headID = document.getElementsByTagName("head")[0];
var metaNode = document.createElement('meta');
metaNode.name = 'viewport';
metaNode.content = 'width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0';
metaNode.id = 'metatag';
headID.appendChild(metaNode);}
function closeMeta(){
$("#metatag").remove();}
$("#add").click(function(){initMeta();alert("meta opened");});
$("#del").click(function(){closeMeta();alert("meta closed");});
});
</script>
<input name="add" type="button" value="add metatag" id="add"/>
<input name="del" type="button" value="delete metatag" id="del"/>
1 ответ
Я отмечаю это поведение в iOS Safari тоже.
Вы на самом деле удаляете метатег (проверяется через DOM - попробуйте предупредить $("#metatag"). Длина после удаления)
Проблема в том, что сама область просмотра не реагирует на отсутствие содержимого в этом теге. Если вы обновите содержимое или повторно добавите метатег с новым содержимым, вы должны увидеть его на своем экране. Но, просто удаляя метатег, агент UA, кажется, думает: "Никаких изменений не требуется", поскольку он не получает никаких явных инструкций.
Надеюсь, это поможет! Ваш вопрос / пример помог мне понять, что это даже возможно!