Prototype1.5.1源代码解读分析-3

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>
BrowserFeatures

BrowserFeatures(浏览器特征)的值也是一个对象。内容如下:

{

    XPath: !!document.evaluate,

    ElementExtensions: !!window.HTMLElement,

    SpecificElementExtensions:

      (document.createElement('div').__proto__ !==

       document.createElement('form').__proto__)

  }

Prototype也规定了一个(初始化的)属性来描述浏览器的特征信息,然后它在源代码中被到处使用。这个思想是,第一,让Prototype的源代码更易读;第二,让无论怎样的脚本欺骗必然被浏览器特征所探测出来,目的是减轻维护。(译者注:第二点好像翻译得不太对哦!水平有限!)

唯一当前可用的特征探测是浏览器支持DOM LEVEL 3 XPath,在Prototype.BrowserFeatures.XPath.中返回一个布尔值

ScriptFragment

ScriptFragment属性的作用是识别脚本的正则表达式,返回一个字符串。在文档中没有找到关于他的描述。内容如下:

ScriptFragment: '<script[^>]*>([\u0001-\uFFFF]*?)</script>'

JSONFilter

JSONFilter(JSON过滤器)属性的作用不详,在文档中没有找到关于他的描述。内容如下:

JSONFilter: /^\/\*-secure-\s*(.*)\s*\*\/\s*$/

emptyFunction

emptyFunction(空函数)属性是一个空函数。他不做任何事也不返回任何值。内容如下:

emptyFunction: function() { }

K

K属性的作用是回传参数。内容如下:

K:function(x) { return x }

posted @ 2007-08-16 23:34  netcorner  阅读(153)  评论(0编辑  收藏  举报