`
airfans
  • 浏览: 124852 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Adobe AIR 2.5 中的HTML, HTML5, CSS 和JavaScript 新特性 [译] 下

阅读更多

Adobe AIR 2.5 中的HTML, HTML5, CSS JavaScript 新特性 下

原文:What's new about HTML, HTML5, CSS, and JavaScript in AIR 2.5?

 

不支持的WebKit 特性

AIR 2.5 不支持Safari 4.0.3 WebKit版本包含的一些HTMLCSS JavaScript功能。

下面列出了这些功能,以及在AIR 中建议的解决方案。

音频/视频HTML5的标签

HTML5万众期待的功能之一是用<audio><video>标签来播放媒体内容。这些标签也可以通过JavaScript API来实现。然而,该规范还没有最后定稿和支持的格式标准。此外,支持这些标签的浏览器的编解码器各不相同。

<audio><video>标签最常用的场景是当系统不支持Flash Player时用来代替Flash player 展现媒体资源。然而,AIR 有自己的Flash Player版本。对于基于Flash的定制的视频/音频播放器Adobe支持两种方式来播放视频。

l         FAVideo (Flash-Ajax 视频组件):在Adobe Open Source网站上可以找到。这是一个基于Flex的视频播放器,被包装在AJAX容器中。

l         AIR.Video对象: 属于rutime 的基本类,用来支持视频。它可以添加到stage中,不论其周围的html 内容如何变化,其位置必须明确设置。

不支持的CSS功能

下面的CSS特性,AIR 2.5均不支持。

1)       -WebKit-background-clip:text –WebKit-background-mask-clip:text

WebKit的推出两个新的CSS声明来控制的背景和Mask滤镜的行为,分别是-WebKit-background-clip-WebKit-background-mask-clip.WebKitSafari版本中,两个声明都允许使用text,content,borderpadding属性。然而,CAIRo库在滤镜操作中不支持使用文本作为滤镜,因此 AIR 2.5目前仅支持content,borderpadding属性。这个功能计划在未来的版本中支持。

2)       样式化html 控件

虽然AIR CSS属性有丰富支持,但是当使用纯css样式(不使用JavaScript做元素替换)来修饰html 控件时有一些问题.概括地说,这些限制影响下列控件:

<select> (下拉框):更改扩展列表的背景色不起作用,也不会改变下拉框中每个条目的字体和颜色。

<input type=”checkbox” /><input type=”radio”>: 大多数的CSS属性都不能改变这些控件的外观。但是,这种行为与Safari中的行为一致。

3)       媒体查询:

20099月,媒体CSS3中的查询功能,是W3C推荐的候选。媒体查询是对媒体类型功能的增强。查询可以包括(但不限于),如宽度,高度和方向属性。媒体查询能在不更改html内容本身的前提下改变文档的外观。

AIR 2.5不支持媒体查询。

4)       SVG

SVG近来得到了越来越多的关注。当前WebKit版本支持,但是AIR不支持。

不支持该特性的主要原因是考虑AIR runtime 的大小(加入它会增加百分之十五至二十运行时的大小)。最初,主要痛点是AIR runtime的大小,与本地操作系统和API集成,支持<canvas>标签,支持新的CSS属性和JavaScript性能。所有这些优先事项与具有兴趣降低趋势的SVG图形功能相比,导致当前的AIR runtime 不支持SVG

然而,基于HTML5 canvas 的富JavaScript应用的重新兴起以及快速发展的JavaScript引擎又增加了对矢量图形画图的需求数量。因此,可能在AIR下一版本中考虑支持SVG

5)       Web sockets

WebSockets协议允许Web应用程序能够处理与服务器进程的直接双向通信。该协议的主要目的是用WebSockets消除异步网络I/O中过度使用XHR,并允许用web应用作为客户端建立更丰富,更复杂的网络通信。

然而,在AIR 2.5中包含的网络API能够构建比Web sockets更灵活的使用方案。新的网络API支持UDP套接字和安全的TCP连接,以及和HTTPHTTPS相关的很多的协议(包括RTMPRTMFP)

6)       Web workers

Web WorkersWEB前端网页上的脚本提供了一种能在后台进程中运行的方法。可以通过消息传递的机制与父页面进行通信,而不需要访问父页面或者DOM对象。

目前AIR 不支持此功能,Adobe正在考虑该功能能够基于AIR API

7)       客户端数据库

AIR 在第一次版本发布时就支持创建和使用SQLite来存储客户端数据,AIR 1.5中增加了对事务的支持,而AIR 2强化了事务保存点。

HTML5支持一个客户端的轻量级的关系数据库,并且公布了 -SQL API用于数据存取。然而,目前的实现有限制,有些用户代理限制了在客户端数据库中存储的数据数量以限制或防止拒绝服务攻击。

目前,HTML5的客户端数据库的API被禁用,因为AIR对于原生数据库的支持已经超出了HTML5提供的功能集。

8)       离线缓存

HTML5中另一个与客户端存储数据相关的功能是应用程序缓存。使用应用程序缓存,应用程序可以指定哪些资源应该被缓存在客户端,那些资源访问始终从网络,以便在用户没有连接的情况下也能与Web应用程序和文件交互。

默认情况下AIR应用程序的所有的文件和资源驻留在用户的本地硬盘。然而,需要网络连接的应用程序可以使用networkChange事件和ServiceMonitor类来确定网络服务是否可用。当应用程序离线运行时,可以通过flash.data*类使用本地文件系统或者数据库内缓存的资源。

9)       窗口消息

HTML5支持对窗口对象调用PostMessage()方法。这使得任何一个窗口可以广播文本消息和任何其他窗口订阅这些消息,从而达到页面之间的安全跨域通信。

当前AIR不支持这个功能,但AIR提供了跨域通信的安全机制。

10)   其他HTML差异

传统上,可以通过调用document.print()函数实现HTML的打印。然而调用这个函数后,Web应用程序开发人员无法控制打印的实际效果(包括但不限于是否进行彩色打印,纸张尺寸规格,份数,等等)。一些对整体样式的控制可以通过CSS媒体类型实现,但一切仍然是由浏览器和用户设置决定的。

AIR 2.5中,document.print()函数是被禁用的,其使用PrintJob来控制打印过程。使用PrintJob API允许对可视化的,动态的,或者是off-screen的内容渲染,而且能弹出系统打印对话框,并读取用户的打印机设置包括页面宽度,高度,方向和颜色。

11)   符合标准

最新的Adobe AIRACID3 compliance测试中获得91/100 的分数。Safari的分数是100/100造成评分差别的主要原因是上文提到的各点。主要是缺乏对SVG的支持(丢掉6),媒体查询,data:URLs 安全限制。最后一分,是因为AIR不支持浏览器默认的保存历史的功能,因为Adobe AIR不是浏览器。

AIR 2.5功能一览

23 总结了Adobe AIRSafari 4.0.3 相对应的特征集

CSS 特性

AIR 2.5

CSS3 –WebKit 选择器

支持,除文本裁剪

Web 字体(@font-face)

支持

Transforms 2D

支持

Transforms 3D

不支持

Transitions

支持

Animations

支持

Reflections

支持

滤镜

支持

样式化滚动条

支持

Gradients

支持

Zoom

支持

原生 CSS 查询选择器

支持

CSS 媒体设备查询

不支持

2 AIR 2支持的CSS 特性

HTML 5 特征

AIR 2.5

快速JavaScript 引擎

支持 WebKit Squirrelfish Extreme JavaScript 引擎

Canvas

支持

SVG

不支持

HTML5 段标签(header,nav,article)

支持

Video/Audio 标签

不支持

Web workers

不支持

客户端数据库

不支持, AIR 有自己的客户端数据库,并且公布了API

离线检测和缓存

AIR 为离线设计并且提供了API来检测网络状态的变化

跨域的XMLHttpRequest请求

不支持,但是应用程序沙箱的XHR可以访问任何域

跨页面的消息处理

不支持。PostMessage()AIR 中不支持

Web 存储

不支持,AIR支持访问文件系统,共享的Flash 对象,加密的本地存储和本地SQLite 数据库

Web sockets

不支持,AIR 有自己的Socket API

Server-sent Dom 事件

不支持

Geolocation

不支持

拖拽支持

支持,AIR 有自己的拖拽API来支持更深入得桌面操作

Forms

不支持

历史状态 返回 按钮

HTMLLoader 提供自定义的历史堆栈

Widgets

AIR 的设计类似Widgets定义

3  AIR 2 中支持的HTML5 功能

本文概括了AIR 2.5HTML部分的相关特性。由于该HTML引擎基于Safari 4.0.3中的WebKit,因此它们在HTML/JavaScriptCSS渲染方面有很多共同的特性。那些WebKit/Safari拥有而AIR没有的功能,通常在AIR中都能找到可用的解决方案,而且AIR能够提供更深入更灵活的API,比如本地存储、网络和桌面交互。性能方面也有了很大的提高,几乎接近并且有时能和Safari相一致。

分享到:
评论

相关推荐

    adobe air runtime version 33.1.1.744 for Mac

    Adobe AIR(Adobe Integrated Runtime)是Adobe公司开发的一款跨平台的应用程序运行环境,它允许开发者使用HTML、CSS、JavaScript等Web技术或ActionScript编程语言创建桌面应用程序。这些应用程序可以在Windows、Mac...

    dreamweaver的adobe air扩展Adobe_AIR.mxp

    标题中的“dreamweaver的adobe air扩展Adobe_AIR.mxp”指的是Adobe Dreamweaver中的一个特定扩展,用于支持Adobe AIR技术。Adobe AIR(Adobe Integrated Runtime)是一个跨平台的运行环境,允许开发者使用HTML、CSS...

    adobe air runtime version 50.2.4.1 for windows

    Adobe AIR(Adobe Integrated Runtime)是Adobe公司开发的一款跨平台的应用程序运行环境,它允许开发者使用HTML、CSS、JavaScript以及ActionScript等技术创建桌面应用程序。标题中的"adobe air runtime version 50.2...

    Adobe Air html docs

    2. **HTML5和CSS3支持**: Adobe AIR支持HTML5和CSS3的新特性,使得开发者可以创建具有现代网页设计元素的桌面应用,如音频和视频播放、离线存储、拖放功能等。 3. **JavaScript API**: AIR提供了丰富的JavaScript ...

    Adobe AIR 1.5 中文帮助手册

    Adobe AIR为开发人员提供了一个集成的开发环境,可以利用Web技术如HTML、CSS、JavaScript(通过ActionScript 3.0实现)和Flex框架,创建可以在Windows、Mac OS和Linux上运行的桌面应用程序。它将Web的动态性与桌面...

    用Adobe Air和Javascript实现一个简单的不规则窗口桌面程序

    标题中的“用Adobe Air和Javascript实现一个简单的不规则窗口桌面程序”揭示了本文将探讨如何使用Adobe AIR(Adobe Integrated Runtime)框架与JavaScript编程语言来创建一个具有非标准形状的桌面应用程序。Adobe ...

    AdobeAIR_for_javascript_developers

    Adobe Integrated Runtime (AIR) 为 JavaScript 开发者提供了一个强大的框架,让他们能够在不牺牲功能性和性能的前提下,构建跨平台的桌面应用程序。通过掌握 AIR 的基本原理和高级特性,开发者可以充分发挥其潜力,...

    Adobe Air Programming Unleashed

    Adobe AIR(Adobe Integrated Runtime)是一种由Adobe Systems开发的跨平台应用程序运行环境,允许开发者使用HTML、CSS、JavaScript以及Adobe Flash Player或Flex构建的应用程序在桌面操作系统上作为独立的应用程序...

    AdobeAIR入门教程

    Adobe AIR(Adobe Integrated Runtime)是Adobe公司推出的一款跨平台的应用程序运行环境,它允许开发者使用HTML、CSS、JavaScript以及ActionScript等技术开发桌面应用程序。这个入门教程是Adobe公司的内部资料,对于...

    adobe air runtime version 33.1.1.744 for windows

    Adobe AIR(Adobe Integrated Runtime)是Adobe公司开发的一款跨平台的应用程序运行环境,它允许开发者使用HTML、CSS、JavaScript以及ActionScript等技术创建桌面应用程序。在本案例中,我们讨论的是Adobe AIR ...

    Adobe AIR 阅读器

    Adobe AIR (Adobe Integrated Runtime) 是一个跨平台的运行环境,由Adobe公司开发,它允许开发者创建桌面应用程序,这些应用程序能够利用Web技术,如HTML、CSS、JavaScript,同时也能利用ActionScript,这是Adobe ...

    小胖的 Adobe AIR with Ajax 实例课堂(一)

    Adobe AIR (Adobe Integrated Runtime) 是一个跨平台的应用程序运行环境,允许开发人员使用HTML、CSS、JavaScript等Web技术创建可以在桌面环境下运行的应用程序。在"小胖的 Adobe AIR with Ajax 实例课堂(一)"中,...

    Developing Adobe AIR 1.5 Applications with HTML and Ajax

    通过使用HTML5的新特性和元素,如`&lt;video&gt;`和`&lt;canvas&gt;`,开发者可以构建更加动态和交互式的UI组件。 - **Ajax数据处理**:Ajax技术可以让应用程序在后台与服务器进行异步数据交换,这使得用户可以在不刷新整个页面...

    adobe air 入门示例

    Adobe AIR(Adobe Integrated Runtime)是Adobe公司推出的一款跨平台的应用程序运行环境,它允许开发者使用HTML、CSS、JavaScript以及ActionScript等技术开发桌面应用程序。这篇博客"adobe air 入门示例"很可能是...

    as3 adobe air ios airplay

    1. **Adobe AIR**:Adobe Integrated Runtime(AIR)是一种运行时环境,允许开发者使用HTML、CSS、JavaScript或ActionScript创建桌面和移动设备上的富互联网应用程序(RIA)。AS3是ActionScript的第三个主要版本,常...

Global site tag (gtag.js) - Google Analytics