Введение статьи Wulin.com (www.vevb.com): iOS версия 4.2 Safari поддерживает обновления для функций HTML5.
Статья, составленная из Safari на iOS 4.2: Акселерометр, WebSockets, SVG, AJAX2 и лучшая поддержка HTML5
Что ж, говорят, что iOS 4.2 был выпущен, и все iPhone, iPod, iPad и т. Д. могут быть обновлены бесплатно. Приятно, что эта версия iOS имеет относительно большое обновление в поддержку новых функций HTML5, в том числе поддержку WebSockets и акселерометр, новое событие, поддержку печати, новые типы данных JavaScript и лучшую поддержку SVG.
На самом деле, Apple еще не обновила документацию Safari. Информация здесь основана только на исследовании JavaScript и тестировании Safari (примечание: Safari относится к браузеру Safari на мобильных устройствах iOS, не включая Safari на компьютерах и Mac). В частности, обнаруженные новые функции следующие:
Поддержка акселератораВозможно, вы уже знаете, что устройства iOS имеют датчики ускорения (и другие, такие как магнетизм и гироскопы), но до сих пор у веб -разработчиков нет разрешения на эксплуатацию этих датчиков. Safari теперь поддерживает API Deviceorientation API (Draft W3C), но, хотя кажется, что все API поддерживаются (включая OndeviceOrientation и Ondevicemotion события), при тестировании я могу только успешно использовать данные акселератора.
Если у вас уже есть устройство iOS 4.2, вы можете использовать браузер Safari для доступа к ad.ag/jtjdmj, чтобы проверить его самостоятельно.
Чтобы обнаружить 50 изменений данных акселерометра в секунду, вам необходимо прослушать событие Ondevicemotion в глобальном объекте окна, а затем использовать свойство AccelerationIncludeGravity в параметре DeviceOrientationEvent. Он имеет три значения: x, y и z, которые представляют ускорение G (гравитация) на каждой координате соответственно. Вы можете использовать количество ускорения в играх, эффектах или анимации CSS.
12345window.event
Веб -вагоныЕще одним большим обновлением является поддержка WebSockets. WebSockets-это API W3C HTML5, который все еще находится в проекте состояния, что позволяет JavaScript использовать открытое двустороннее соединение с двумя рабочими работами с сервером через розетки TCP. Это очень хорошая новость для приложений в чате и в реальном времени, так как периодические вызовы AJAX могут быть значительно сокращены.
Вам понадобится сервер, который может понять новый протокол WebSocket через рукопожатие HTTP. Если сервер не поддерживает WebSocket или по причинам прокси/шлюза, вы также будете полагаться на резервный механизм.
HTML5 Форма ПоддержкаНа самом деле, поддержка Webkit для форм HTML5 относительно хороша. Теперь Safari в iOS 4.2 начал поддерживать необходимый атрибут и: недействительный CSS Pseudo-Class. Таким образом, в следующем коде будет отображаться текстовое поле, которое отображает зеленый фон, когда он вводится правильно, и желтый фон, когда он неверный.
<style> input {фоновый цвет: green; color: white;} ввод: неверный {фоновый цвет: желтый;} требуется>
Ajax2Объект с именем FormData позволяет нам легко генерировать данные формы через AJAX.
Поддержка печатиiOS 4.2 представляет Airprint, неограниченное решение для печати. То есть теперь мы можем использовать Window.print, чтобы вызвать диалог печати в Safari.
Новые типы данных JavaScriptВ настоящее время Safari поддерживает коллекции бинарных классов (класс Blob) и множество типов целочисленных целого числа, таких как Float32array, Int8array, Uint8array, Int16Array Unit16array, Int32Array и Uint32Array и т. Д. Больше информации доступна.
Новые события DOMВ новом событии Action Class мы теперь можем использовать новое событие HTML 5 для обнаружения изменений после хэша (#) в URL-адресах в веб-приложениях класса AJAX, а также недействительными, событиями OnbeForeLoad и OnPopstate в черновых спецификациях HTML5.
Теперь мы также можем использовать Window.captureEvents и Window.ReleaseeVents для прослушивания событий в глобальном методе.
SVG и Canvas поддерживают улучшенияiOS поддерживает SVG в качестве автономных файлов, а также встроенных SVG (используя теги SVG). Теперь мы можем создавать документы SVG непосредственно в нашем документе - используя более 20 классов SVG___, таких как Svgdocument, Svgimage и т. Д.
Для холста теперь поддерживается тип данных ImageData, способ манипулировать изображениями на уровне пикселей от JavaScript.
Другие вещиPS: Поскольку у меня нет iPhone, iPad и т. Д., Невозможно проверить контент в статье один за другим. Если вы найдете некоторые ошибки или новый контент, отправьте его, оставив сообщение. Я буду обновлять эту статью вовремя. Спасибо - Шенфей