`
cev773wq
  • 浏览: 14939 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

AIR笔记 使用HTML

 
阅读更多

AIR笔记   使用HTML
2011年05月17日
  air2.5的webkit
  c++ singleton实现
  flash 2011-02-25 16:25:15 阅读40 评论0   字号:大小 订阅
  来自:http://www.ebibi.com/i/experience/2010/0707/263.html
  1. 使用flash.html.HTMLLoader读入HTML内容,
  load()读入页面等资源, loadString()读入一个HTML串
  2. 如果系统上安装了Acrobat Reader 8.1 以上的插件, 则可以用同样的方法加载和呈现PDF了.
  可以用 HTMLLoader.pdfCapability 属性判断PDF特性是否可用, 返回四种值:
  STATUS_OK(可用) 三种ERROR(没安装, 安装版本过旧, 优先使用版本过旧)
  3. 在Flex工程中, 可以使用  来取代HTMLLoader
  指定location属性, 可以使HTML组件自动加载并呈现内容
  HTML组件并不直接支持 loadString()
  但可以通过其 htmlLoader 属性, 获得其包装的HTMLLoader对象, 间接实现
  4. 如果不想缓存内容, 应该在 load() 之前设置 HTMLLoader对象的 cacheResponse = false
  如果不想优先读取本地缓存, 在 load() 之前设置 useCache = false
  5. 如果碰到需要身份验证的站点, AIR默认会弹出 用户名/密码 对话框
  如果想禁止弹出, 设置 authenticate = false, 但这样会导致服务器返回错误
  6. 可以设置 userAgent 属性以实现ua欺骗
  7. 设置 manageCookies = false 可以禁止在本地存储cookie
  8. 如果不想针对每个 HTMLLoader 实例设置上述属性,
  可以用 URLRequestDefaults类的静态方法统一设置
  9. 内容超出范围的情况下, 在 控件中, 使用flex内置的 …Policy 属性即可调节滚动条
  10. 使用as时, 监听HTMLLoader的complete事件, 而后即可获知contentWidth和contentHeight属性
  使用scrollH和scrollV属性可以控制内容向右和向下的移动值
  11. var hl:HTMLLoader = HTMLLoader.createRootWindow([可选的参数]);
  hl.load(…);
  这样将把加载的内容放到一个AIR窗口中, 并且该窗口可以自动添加滚动条
  12. 使用 HTMLHistoryItem 对象来保存浏览历史, 包括以下属性
  url -> 页面的url
  originalUrl -> 初始url(可能的跳转之前)
  title -> 页面的title
  isPost -> 是否包含post数据
  HTMLLoader对象的属性 historyLength 指示了历史项目的数量
  用 getHistoryAt() 返回对应的 HTMLHistoryItem 对象
  也可以使用 HTMLLoader对象的 historyBack(), historyForward(), historyGo() 实现导航
  13. AIR并不仅仅能加载和呈现HTML, 因为HTMLLoader暴露了所加载HTML内容的全部DOM,
  所以可以与其交互, 但需要等待内容加载完
  HTMLLoader对象的window 对应了 HTML内容中js的window对象,
  可以直接读取其属性或调用其方法等
  如果把一个function赋值到一个js方法上, 会替换该方法的动作
  _htmlLoader.window.xxx = function():void { trace(”xxx”); };
  可以用和js类似的方法操作DOM
  _htmlLoader.window.document.getElementById(”p1″).innerTEXT = “xxx”;
  14. 有两种方法可以注册对js方法的监听: 在HTML元素的事件属性上赋值 以及 使用addEventListener()
  比如 _htmlLoader.window.document.getElementById(”p1″).onclick = clickHandler;
  或 _htmlLoader.window.document.getElementById(”p1″).addEventListener(”click”, clickHandler);
  处理函数接受一个类型为 Object 的事件对象, 包含了 target 和 currentTarget属性
  private function clickHandler(evt:Object):void {  trace(”click”);  }
  15. 可以通过继承 HTMLHost 类来实现对 Window.status Window.focus() 等属性和方法的定义
  并指定到HTMLLoader对象的htmlHost属性上
  16. 在所加载HTML的js中, 可以使用 window.runtime 来调用一切 Flash Player APIs
  比如 window.runtime.trace()
  window.runtime.flash.desktop.NativeApplication.nativeApplication.openedWindows[0]
  如果要在js中调用自定义的类型, 需要将HTML内容加载到same ApplicationDomain
  _htmlLoader.runtimeApplictionDomain = ApplicationDomain.currentDomain;
  17. 所有加载到AIR中的HTML内容都有sandbox限制
  从 application目录或子目录加载的, 为 application sandbox
  从其他地方加载的, 为 noapplication sandbox
  application sandbox 中禁止的操作有:
  1). eval()只能用于字面量和常量
  2). setTimeout()和setInterval()只能调用字面量的方法, 不能执行字符串
  3). innerTEXT和innerHTML中不能包含script
  4). 不能使用 ‘javascript’ 关键字作为URI配置
  5). 不能载入application domain之外的外部js文件
  这些限制尽量屏蔽了恶意的js代码, 保证application domain中的js相对安全的获得包括本地文件操作在内的AIR API
  外部载入的js没有以上限制, 但虽然它可以不受控制的执行eval(), 却是没有访问本地文件系统权限的
  18. 当绝对需要时, 也可以使用 sandbox bridging 技术
  一种跨域脚本访问方法, 在noapplication sandbox中的内容与其在application sandbox中的父文档直接创建沙箱桥接口
分享到:
评论

相关推荐

    小米air 13.3 i57200u 指纹版可用 EFI

    小米air 13.3 i57200u 指纹版可用 EFI,安装教程可参考https://blog.daliansky.net/MacOS-installation-tutorial-XiaoMi-Pro-installation-process-records.html

    flex air 博客管理系统

    2. **Adobe AIR (Adobe Integrated Runtime)**:AIR是一个跨平台的运行环境,允许开发者使用Web技术(如HTML、JavaScript、Flash/Flex)创建桌面应用程序。它将Web应用程序的灵活性与桌面应用程序的特性相结合,如...

    flex笔记 flex笔记 flex笔记

    Flex是一种用于构建跨浏览器、跨平台的富互联网应用(RIA)的软件框架,它使用Adobe Flash Player或Adobe AIR来呈现界面,并支持多种编程语言,如ActionScript。 ### Flex基础知识 1. **Flex简介**: - Flex是一...

    FLEX学习笔记

    《FLEX学习笔记》 FLEX,全称为Flex Builder,是由Adobe公司开发的一款基于MXML和ActionScript的开源框架,用于构建富互联网应用程序(RIA)。它允许开发者创建具有交互性、响应性和丰富用户体验的Web应用。FLEX的...

    TryjQuery School学习笔记

    《TryjQuery 学习笔记详解》 jQuery 是一个强大的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画以及 Ajax 交互等任务。TryjQuery School 提供的视频教程是学习 jQuery 的优秀资源,以下是对其中重要知识...

    AIRNotes 桌面记事

    Adobe AIR(Adobe Integrated Runtime)是一个跨平台的运行环境,它允许开发者使用HTML、CSS、JavaScript等Web技术或ActionScript语言创建桌面应用程序。AIR为开发者提供了丰富的API和功能,使得Web应用能够拥有更...

    CSS3 3D 苹果笔记本动画

    这又是一款超酷的CSS3 3D动画效果,它是一款带有3D视觉效果,并且可以360度旋转的macbook air。这款CSS3 3D动画的笔记本底部有一个逼真的投影,可以跟随图片一起转动,从而凸显其3D效果,是一款很不错的CSS3 3D动画...

    Mark Man(马克鳗)

    这个文件名可能是Mark Man应用程序的安装包,通常以 ".air" 扩展名结尾的应用程序是由Adobe AIR技术构建的,这是一种跨平台的运行时环境,允许开发人员创建桌面应用,而这些应用可以使用Web技术(如HTML、CSS和...

    CalendarNote

    1. **Adobe AIR**:Adobe AIR是Adobe公司推出的一种跨平台的运行环境,允许开发者使用HTML、CSS、JavaScript以及Flash/Flex技术来创建桌面应用程序。AIR支持Windows、macOS和Linux操作系统,使得开发者能将Web应用...

    《BlazeDS开发指南》学习笔记

    客户端利用Flex SDK中的组件(如RemoteObject、HTTPService、Producer、Consumer)与服务端通信,同时,HTML、JavaScript和Ajax客户端库也可用于构建与BlazeDS通信的前端。 #### 二、服务端集成步骤 为了在J2EE ...

    tas:True Air Speed是一种用于跟踪和分析实时数据的轻型系统

    #入门###安装从github安装zmq3库(如果尚未安装): go get github.com/pebbe/zmq3 2.下载TAS软件包,运行: go get github.com/chango/tas ###笔记html目录中有一些HTML模板,服务器将在启动服务器的根目录...

    beagairbheag:基于浏览器的实用程序的开放源代码,用于协助认真研究BBC的Beag air BheagGàidhig教学计划

    伴侣提供了一种“整理”该材料的方法,以使访问更方便,也为认真的学生提供了一种添加自己的笔记的方法。 它在Chrome或Firefox等网络浏览器中本地运行,并以紧凑,可访问的形式显示所选节目集的所有资料。 主要要素...

    Web技术开发桌面应用的研究与设计.pdf

    【描述】:本文主要探讨了一种使用纯Web技术构建桌面应用程序的新开发模式,强调了其运行环境的特点和要求,并通过设计一个论文阅读笔记系统来验证该模式的可行性。文章还讨论了Web技术在桌面应用中的优势,包括简化...

    Pro personal information managemant

    Adobe AIR是一种跨平台的运行环境,允许开发人员使用HTML、CSS、JavaScript以及ActionScript(AS3)等技术创建桌面应用。这意味着这个个人信息管理工具可能具备跨平台的特性,可以在Windows、Mac OS甚至移动设备上...

    flex学习小记录

    标题中的“flex学习小记录”表明这是一份关于Adobe Flex技术的学习笔记或教程。Flex是一种开源框架,主要用于构建富互联网应用程序(RIA),特别是在Flash Player和Adobe AIR上运行的应用。它基于ActionScript语言,...

    QuickExchange:快速交换是由Flask提供支持的轻量级网站,它允许在两个不同的设备之间交换任何URL链接或任何文件类型(即.zip,.png,.mp4,.docx,.xls等):mobile_phone_with_arrow::laptop:

    但是,如果像我一样拥有iPhone并使用Windows PC的人,则无法选择AirDrop。 引入QuickExchange,这是一种将文件或URL链接从一台设备传输到另一台设备的快速,可靠和安全的方法。 QuickExchange完全基于Web,无需在...

    城市猎人游戏源码

    开发者可能使用了特定的框架或工具,如Adobe AIR或Haxe,来实现不同平台之间的代码共享和编译。 至于"新建文本文档.txt",这可能包含游戏的说明、开发日志、配置信息,或者是开发者留下的调试笔记。尽管这个文件名...

    苹果apple电脑与手机样机展示_样机素材下载.zip

    Read Me.html文件可能是提供样机使用说明或版权信息的文档。在开始使用样机素材之前,阅读这个文件是非常重要的,因为它可能包含关于如何正确使用和编辑这些PSD文件的提示,以及对创作者的署名要求等。 总的来说,...

Global site tag (gtag.js) - Google Analytics