IEMobile 7.11 с внешним Javascript?
Я пытаюсь работать с устройством Windows Mobile 6.1, работающим на IEMobile 7.11, и пытаюсь загрузить внешний JavaScript как таковой:
<html>
<head>
<script type="text/javascript" src="js/alert.js"></script>
</head>
<body><?php echo('<pre>'); print_r($_SERVER); echo('</pre>'); ?></body>
</html>
alert.js выглядит так:
alert('this is included javascript');
В настоящее время это не появляется, однако, если я вставляю javascript в реальную HTML-страницу, она работает нормально. Это известная проблема с iemobile? Я не могу найти много на Google вокруг этого.. или я делаю что-то не так?
Заранее спасибо.
2 ответа
Я подозреваю, что слишком поздно быть полезным ответом на оригинальный постер, но недавно я столкнулся с той же проблемой. В конце концов я понял, что IEMobile не выполняет файл JavaScript, потому что сервер отправлял файл с типом содержимого application/javascript. Хотя это правильный MIME-тип для файлов JavaScript, и он работает в более ранних версиях IEMobile (которые, вероятно, полностью его игнорируют), в некоторых версиях, если IEMoblie7.11 явно не распознает его.
Изменение веб-сервера для отправки файлов JavaScript в виде "application/x-javascript", похоже, решает проблему. Будучи более старым стандартом, я бы предположил, что "text/javascript" тоже подойдет, хотя сам не пробовал.
Я пытаюсь работать с устройством Windows Mobile 6.1 под управлением IEMobile 7.11
Мне так жаль тебя.
Что ж, с IEMobile<8 есть миллион неправильных вещей, но единственное, что он может сделать, это включить JavaScript из внешнего файла.
Это единственная строка в файле? Вы проверили, что в нем нет постороннего хлама, такого как искусственная спецификация в кодировке UTF-8, сохраненная каким-то идиотским текстовым редактором Windows? Другие браузеры загружают скрипт нормально?
Вы включили ошибки сценария? Многие стандартные методы DOM, которые поддерживаются каждым браузером, начиная с Netscape 4, все еще не работают на IEMobile<8, и у вас не будет шансов отладить что-либо на грязной вещи, если он молча проглатывает ошибки.