网通传奇私服发布网 部分Dojo常用函数简介(三)??页面生命周期及DOM相关常用函数 - Dojo中文博客 - 博客

作者:wmsld.com  来自:www.wmsld.com

该函数接受四个参数: dojo.create(tag, attrs, refNode, pos);

Ogg Vorbis

关链接:


value,为可选参数,如果attr参数为某一属性名,且传入value参数,则为该节点设置相应属性,如果未传入value参数,则返回该节点的attr属性值,如果该节点没有该属性,则返回false。


由于dojo.query采用的是CSS3标准查询模板,当你想用dojo.query进行DOM查询时,你可以在任何的CSS文档中找到正确的查询条件模板,下面的示例是一些简单的查询调用:

  Theora视频压缩格式基本上与VP3视频压缩格式兼容,包含一个后先兼容的超集。Theora是VP3和VP3流(有小量语法修订)的超集,VP3流可以不经过重新压缩改为Theora流,但是反过来把成立。VP3视频压缩可以由Theora来实现解码,但是Theora视频演示通常不能够使用古老的VP3来进行解码。

  Mozilla使用这项技术在Firefox上提供HTML5视频。苹果和微软的HTML5视频都准备采用 MPEG LA管理的H.264。该团体的成员包括微软和苹果,及许多科技公司。


condition:可选参数,为boolean值。如果给定该参数,当该 参数为TRUE时,操作为添加class,为false时操作为删除class。如果该参数未被指定,如果给定的DOM节点没有给定的class则为其添加,否则删除给定的class。

Ogg Speex

以上就是部分Dojo的页面生命周期及DOM相关常用函数,在下一部分中,会介绍关于Dojo对于String及Array对象的一些扩展函数。

若第一个参数传入的是``tag``字符串,则函数成功执行后会返回以该字符串命名的DOM节点,若传入的是DOM节点,则直接将其作为结果返回。例如, 新建一个带href属性的超链接标记,将其置于<body>下:

dojo.toggleClass用于为给定的DOM节点添加或删除指定的CSS class。此函数接受3个参数:

用于获取或设定DOM节点的样式。该函数接收3个参数:


dojo.marginBox和dojo.contentBox都可以用于获取和设置给定节点的大小,第一个参数为给定的DOM节点,第二个参数为可选参数,是一个类似于{ l: 50, t: 200, w: 300: h: 150 }的JSON对象,如果传入第二个参数,则将给定节点设置新的位置、大小。区别在于marginBox包括了节点的margin大小,它们的返回值都为一个对象:{ l: 50, t: 200, w: 300: h: 150 }。

  Theora是一个可 变位速率、以DCT为基础的影像压缩格式。和多 数的影像编码格式一样,Theora 使用了色度抽样、block based motion compensation 和 8×8 DCT block,也支援视 讯压缩图像类型 和 视 讯压缩图像类型,但是不支持使用在 H.264 和 VC-1 的 bi-predictive frames(B-frame),Theora 也不支援 隔 行扫描, variable frame rates, 或 bit-depths larger than 8 bits per component。


要进行操作的 DOM节点对象或其ID;一个CSS class名称字符串:

dojo.removeAttr用于移除给定节点给定节点的给定属性:

  Ogg 的音频编码, 质量非常优秀,特别是低码率下,支持多声道。最高码率能够达到 500kbps,是 AAC 的有力竞争者。


node: 要获取信息的 DOM节点对象或其ID

  On2 最新的编码器,在 VP6 上有不少进步。在2005年1月,On2宣布推出比VP6有更好的压缩比的新的编解码VP7。在2005ian4月,On2公司许可On2视频编码器9包括VP6和VP7)用于Macromedia Flash。在2005年8月,Macromedia宣布他们选择VP6作为新的Flash Player8的视频回放的旗舰式编解码。

dojo.position,dojo.marginBox, dojo.contentBox

  从一开始,On2 就把这个编码器提供给大家下载,质量还是不错的。不过最近似乎又关闭了,主页上只有一个解码器。On2 TrueMotion VP6是一个专有的有损视频编解码格式和视频编解码器。它是TrueMotion视频编解码的具体体现,是一系列由On2开发的视频编解码,通产个用于Adobe flash,Flash Video和JavaFX媒体文件。

  这里面的争议关键在于license的问题,H.264是需要给license的。


node:要进行操作的 DOM节点对象或其ID


dojo.body用于返回当前文档的body对象。

dojo.hasClass, dojo.addClass, dojo.toggleClass

  Vorbis是一个延续的音频压缩的开发始于 1993年 克里斯蒙哥马利.集约发展始于1998年9月后,信弗劳恩霍夫协会 该公司宣布将收取许可费为 MP3音频格式。Vorbis的项目开始作为公司的一部分,Xiph.Org 基金会的Ogg项目(也称为 OggSquish多媒体项目)。克里斯蒙哥马利开始工作的项目,并协助越来越多的其它开发商。他们继续完善 源代码 直到Vorbis的文件格式被冻结 2000年5月为 1.0 和一个稳定的版本(1.0)的参考软件发布于 2002年7月19日。

  2010年5月19日,WebM启动。WebM包含了来自于Mozilla、Opera、Google以及其他四十多家出版商和计算机软硬件供应商(包括AMD、NVIDIA)的贡献,旨在大力倡导在HTML5中使用VP8,网通合击传奇私服。Internet Explorer 9在安装了适合的编解码器之后也能支持VP8。

  Mozilla则发出以下声明:“我们相信,HTML5视频在多方、开放和无权利金的编/解码器,以同于W3C授权标准之方式支持下,才符合公众利益。如 果MPGA LA愿意根据W3C标准定义的开放网络条件提供H.264,我们绝对会考虑采用这项技术。本组织坚持我们对Theora的立场。”

或者:

  Google 认为开放标准格式可以成为目前无序的视频格式之争的底线。最后的权益方案不需要最复杂的格式,或者是最大张旗鼓宣传,几乎已成为行业标准的格式,因此他们决定选择支持使用广泛的开源Ogg Theora格式。

VP7

On2 VPX 系列


dojo.addClass用于为给定的DOM节点增加指定的CSS class

  好消息是新一代的 HTML 5标准引入了视频元素,Web开发者可以用一种标准的方式指定视频的外观。现在问题变成了使用哪一种视频格式。


node: 要进行操作的 DOM节点对象或其ID

  Ogg意指一种文件格式,可以纳入各式各样自由和开放源代码的编解码器,包含音效、视频、 文字(像字幕)与元数据的处理。

dojo.addOnLoad

与dojo.addOnLoad(...)相呼应,Dojo.addOnUnload用于注册函数在页面销毁时运行。

在进行DOM相关操作时,很多时候需要查找特定的DOM节点,使用浏览器原生的DOM API进行查找不仅需要写较多的代码,而且很多时候效率十分低下,dojo.query则提供了一个更快、更方便的方式来对DOM节点进行查询。

  On2 公司开发了一系列优秀的视频编码,现在应用得最多的恐怕是 Nullsoft Video 的视频,它们就采用了 VP3,VP5,VP6 视频编码。

VP3


includeScroll:该参数为一个boolean值,默认为false,当设为true时,返回的x及y则为相对于整个document文档的位置值(忽略滚动条)。

tag可以是字符串或DOM节点。如果是字符串,1.85,函数会将其视作节点的标签名,以此来新建节点。建立节点时,会以refNode作为父节点。如果refNode为null或并未指定,则默认以dojo.doc作为父节点。


style:要进行操作的DOM节点样式属性名,新开传奇sf,或一个包含键值对的JSON对象,用于为DOM节点设置其中包括的所有样式

VP8

dojo.destroy

  Theora是一个免权利金、开放格式的有损影像压缩技术,由Xiph.Org 基金会开发,该基金会还开发了著名的声音编码技术Vorbis, 以及多媒体容器档案Ogg。Theora 是由 On2 Technologies 公司专属的 VP3 编码器经过开放源代码后衍生而来。Theora 的命名来自于一个电视节目Max Headroom。

dojo.addOnUnload

dojo.doc相当于windows[“document”]的值,该函数的作用主要有两个。首先它提供了一个指向当前文档对象的更为简洁的引用。其次,所有使用 dojo.doc 的引用,只需要通过改变dojo.doc变量的值,就可以临时切换到其它的文档对象作用域上。使用这个变量来替代对 window.document 的使用。通过这种方式可以确保是在当前页面的文档对象上工作。另外,通过使用此变量,当文档对象发生改变的时候,与文档对象相关的操作还能正确执行。这点对于需要在iframe中运行的Dijit组件来说尤为重要。


dojo.hasAttr用于检查给定的DOM节点是否有给定的属性值,如果有则返回true,否则返回false:

VP5

每个Ajax 框架都对Javascript 做了扩展,提供了很多常用函数,增强了 Javascript 的开发效率。在这里将对部分Dojo 中的常用函数做简单的介绍。由于Dojo的常用函数较多,也为方便大家阅读,将这些常用函数分为了五个类别分别进行介绍。本文将介绍第三部分的内容:页面生命周期及DOM相关常用函数。

* 本系列博文的绝大多数内容来自于对dojocampus.org上的dojo reference guide文档的翻译,在此也特别感谢文档的翻译者们:Fei Jia, Zhu Xiao Wen, Li Wen Bing, Zhang Jun, Hu Kuang, Huang Wei, Wu Min Qi, Mo Ying, Cheng Fu, Zhong Si Qi

attrs是一个JavaScript对象,其中包含了用以赋予节点的一组属性信息。该参数会在节点创建成功后被原封不动的传给dojo.attr。attrs参数可以null,也可以不指定,亦即“不设置任何属性”,但是假如你想指定函数余下的传入参数,则应该为其显示的指定null值。

  至今还很神秘,On2 并没有放出来,只在 Nullsoft Video 里面见到他的身影。

VP4

dojo.create()可以简化在维护DOM时经常需要频繁执行的一系列操作步骤,例如: 新建DOM节点/给已存在的节点赋予新的属性 –> 为其设置属性 -> 将其置于DOM树上。

Dojo.position用于获取给定DOM节点的绝对位置及大小信息(包括边界 - border)。返回值为一个JSON对象:{ w: 300: h: 150, x: 700, y: 900, },分别表示w:宽度,h:高度,x:X坐标值,y:Y坐标值,单位都为px。

  Opera首席技术官Hakon Wium Lie也提供下列声明;“为了开放网络的成长茁壮,所有媒体(包括视频),必须在无需支付编/解码器授权费的前提下使用。真正支持一个开放网络的浏览器制造商,必须努力建造一个无授权费的基本影音编/解码器。”

  「Ogg」这个词汇通常意指Ogg Vorbis此一音频文件格式,也就是将Vorbis编码的音效包含在Ogg的容器中所成的格式。在以往,.ogg此一扩展名曾经被用在任何Ogg支持格式下的内容,但在2007年,Xiph.Org基金会为了向后兼容的考虑,提出请求,将.ogg只留给Vorbis格式来使用。 Xiph.Org基金会决定创造一些新的扩展名和媒体格式来描述不同类型的内容,像是只包含音效所用的.oga,包含或不含声音的影片(涵盖 Theora)所用的.ogv和程序所用的.ogx。

VP6

  Vorbis的是一个 开源自由软件 项目负责人是 Xiph.Org 基金会,网通传奇私服发布网。该项目产生的数位音频格式规范和软件实施(编译码器)为有损音频压缩。 Vorbi是最常用的结合与Ogg容器格式,因此通常被称为 Ogg Vorbis格式.

Ogg FLAC

  微软的公司博客写道:“源代码能否取得,与知识产权之间的区别,在于可取用的源代码是极度必要的。目前,H.264的知识产权,可通过MPEG LA管理的一个定义明确的方案取得。其它编/解码器的权利通常较不清楚。”

  Theora是On2 Technologies 公司的 VP3 编码器的开源衍生版,Google于去年收购了On2公司。

dojo.byId,dojo.doc, dojo.body

  Google在2009年收购了On2 Technologies,并于2010年5月19日在Google I/O会议上宣布将VP8以BSD许可证的形式开源。。VP8是On2 Technologies继VP3之后宣布开源的第二个编解码器。(Xiph.Org 基金会于2002年接手VP3并将之冠名以Theora,之后以BSD许可证的形式将Theora开源)。要求Google将VP8开源的最大呼声来自于自由软件基金会。2010年3月12日,自由软件基金会给Google发了一封公开信,请求Google逐渐用开源形式的VP8和HTML 5取代YouTube上的Adobe Flash和H.264。

pos为可选参数。取值可以是数字,或如下字符串之一:"before", "after", "replace", "only", "first", 或"last"。如果省略,则默认取"last"。表示安置创建的节点到给定的位置上。

  已经作为开放源代码公布,现在 是 Ogg Theora 项目,当然,Theora 的质量可比 VP3 好多了。

dojo.hasClass用于判断给定的DOM节点是否有指定的CSS class


Dojo.query接收两个参数,第一个为一个字符串,是通过一些基于CSS3标准的属性查询模板,第二个参数为可选参数,为一个DOM节点对象或节点ID,为查询设定范围。

dojo.byId用途与document.getElementById一致:根据DOM节点的ID返回DOM节点对象,但简短了许多,在所有的浏览器下都是有效的。

  在2002年3月,On2将许可改为下周VP3开源代码为LGPL。在2002年6月,On2将VP3作为Xiph.Org仅仅和下的一个类似BSD的开源许可。On2还制定了一个不可更改的免版权费的声明,任何人可以用于任何软件,任何的衍生产品以及任何目的。2002年88月,On2与Xiph.Org签订一项协议,将VP3作为一个新的,免费的视频编解码,成为Theora。On2宣称Theora是VP3的一个继任者。在2002年10月3日,On2和Xiph宣布Theora最早的Alpha代码释放。

dojo.query

dojo.destroy用于将当前节点从其父节点中删除,并逐一销毁自身及其所属的全部子节点。该函数仅对DOM节点有效,并且没有返回值。

注:上述材料来源于wiki的整理。

Ogg Theora


value:为可选参数,如果style参数为某一样式属性名,且传入value参数,则为该节点设置相应样式,如果未传入value参数,则返回该节点的style样式值。

node:要进行操作的 DOM节点对象或其ID

这段JS代码会无法正确运行,因为在js运行时,”other”还未被定义。当然,你可以把这段JS代码放在页面最后,但这样做并不符合正常的HTML编写方式,而且在另一些情况下,也会对你的代码造成部分影响。

  Ogg 的语音编码,专门针对低码率的语音编码。

Dojo.attr提供了获取或修改(增加)DOM节点属性的、事件、CSS样式的方法,它既可作为getter也可作为setter。Dojo.attr包括三个参数:

Dojo.style

  Ogg是一个自由且开放标准的容器格式,由Xiph.Org 基金会所维护。Ogg格式并不受到软件专利的限制,并设计用于有效率地串流媒体和处理高质量的数字多媒体。

如果想用好dojo,必须熟悉Dojo.addOnLoad,它提供了一种机制使作为参数传入该函数的语句及其他函数可以在整个页面的DOM加载完成之后运行。常见的一种情况是:


attr:要进行操作的DOM节点属性名,或一个包含键值对的JSON对象,用于为DOM节点设置其中包括的所有属性

  Theora 的影像流可以储存在任何的容器档案格式中,最常用的是和声音编码Vorbis一起储存在Ogg档案格式中,这种方式可以提供完全开放、免权利金的多媒体档案。此外Theora影像也可以储存在Matroska档 案中。

  Ogg 的无损音频编码。

dojo.attr, dojo.hasAttr, dojo.removeAttr


class: 一个CSS class名称字符串。

  资料来源:

dojo.create,dojo.place

dojo.place函数用于放置给定的DOM节点到指定的位置上。在某些场合下,根据HTML片段来创建和安置节点也许会更容易一些,我们无需为节点设置任何属性,chuanqisf,或是将其指定为某个HTML片段的一部分,则可以考虑使用dojo.place:


对于这类情况,你就可以使用dojo.addOnLoad(...):


该函数接受两个参数:

  On2 公司当年吹牛全球最好的视频编码,后来证明质量很一般。

  比特流格式在2004年冻结(version 1.0 alpha3),有经过了几年的beta版本,Theora第一稳定版本(v1.0)在2008年11月释放。Theora任何版本的视频编码在格式冻结后都与未来的播放器兼容。目前的工作集中在“Thusnelda”分支的bug修复,目前为beta版本,将最后作为Theora1.1版本释放。


以上两个函数都接受2个参数:

refNode,如之前提到的,作为创建节点的父节点对象,该参数为DOM节点对象或节点的ID。此参数可以省略,即表示“不立即安置该节点”。


  Google官方blog称,Web视频目前没有一个标准,有些网站使用Flash,但这要求用户有Flash播放 器;有些使用Java播放器,但为了在JVM虚拟机中解码视频和音频用户需要一个配置很高的机器;等等诸如此类。

  Theora将视频格式建立在开源的基础上,并作为基百科视频内容选择的编码格式。然而,Theora缺少商业支持,并正努力获取分销商尤其是网络分销商接受。

本文来自魔域私服发布网原创,未经许可请勿转载....

Copyright @ 2008-2009 http://www.wmsld.com All rights reserved.
版权所有 魔域私服 保留所有权利