文档手册

Document类

2024-07-07 00:45:32

class Document

注意:在Sciter.JS类 Document 扩展类 Element 中,全局常量 document 表示文档的根元素,所以 document.documentElement === document .因此,Element 类的所有方法也都可用 document

 性能:

body

元素, <body> 元素引用。

元素, <head> 元素引用。

 documentElement

元素, <html> 元素引用。

注意

  document === document.documentElement 在 Sciter 中

location

URL,文档的位置。

URL

string,文档作为字符串的位置。

readyState

 字符串,值:

  •   "interactive" -操作;

  • "complete" - 运营和完成的装载资源;

globalThis

对象,引用与此文档关联的全局命名空间对象。

注意

文档脚本中声明的所有全局变量和函数都将是此对象的成员。

defaultView

在 Sciter 中,它返回 globalThis 对象。

Methods:

querySelector()

document.querySelector(selector)

 参数:

  • selector - 字符串, CSS 选择器

 返回:

  • 元素,与选择器匹配的第一个元素;

  • 如果未找到元素,则为 null;

$()

document.$(selector)

 同 document.querySelector(selector) 义词

 querySelectorAll()

document.querySelectorAll(selector)

 参数:

  • selector - 字符串, CSS 选择器

 返回:

  • Element 的数组,与选择器匹配的所有元素的列表;

  • [],如果未找到元素,则为空数组;

$$()

document.$$(selector);

 同 document.querySelectorAll(selector) 义词

提示

枚举文档中的所有 <span> s

for(const span of document.$$("span"))
console.log(span);

 getElementById()

document.getElementById(id)

 参数:

  • id - 字符串,元素的 ID(不带前导 # );

 返回:

  • 元素,与选择器匹配的第一个元素;

  • 如果未找到元素,则为 null;

createElement()

document.createElement(tag[,attributes])

 参数:

  • tag - 字符串,元素的标签('“div”', '“span”', etc );

  • 元素的属性、对象、可选、初始属性;

 返回:

  • 元素,元素的引用。

 createTextNode()

document.createTextNode(text)

 参数:

  • text - 字符串,文本节点的文本;

 返回:

  • Text,引用 Text 节点。

 createComment()

document.createComment(text)

 参数:

  • text - 字符串,注释节点的文本;

 返回:

  • Comment,Comment 节点的引用。

createDocumentFragment()

document.createDocumentFragment()

 返回:

  • 元素,文档片段元素的引用。

 createNodeIterator()

document.createNodeIterator(root[, whatToShow[, filter]])

 参数:

  • root,Element,要开始 NodeIterator 遍历的根元素。

  • whatToShow - 整数,可选,通过组合 NodeFilter 的常量属性创建的位掩码:

     名字 意义
    NodeFilter.SHOW_ALL 显示所有节点
    NodeFilter.SHOW_ELEMENT 元素
    NodeFilter.SHOW_TEXT 文本节点
    NodeFilter.SHOW_COMMENT 注释节点
    NodeFilter.SHOW_DOCUMENT 文档节点
  • filter, function(node):integer, 可选,将为满足过滤器的每个节点调用该函数。该函数应返回以下值之一:

     名字 意义
    NodeFilter.FILTER_ACCEPT接受 iteartion 的节点
    NodeFilter.FILTER_REJECT拒绝节点并跳过其内容
    NodeFilter.FILTER_SKIP跳过节点,但浏览其内容

 返回:

  • NodeIterator,节点迭代器的引用。

 createRange()

document.createRange([startNode,startIndex[,endNode,endIndex])

 返回:

  • 范围,新范围的参考。

 createDocument()

 createHTMLDocument()

document.createDocument()

 返回:

  • 文档,新文档的引用。

方法(特定于 Sciter):

 bindImage()

document.bindImage(url[, img])

此方法将 img 与任意 url 相关联,以便可以在 CSS 中使用。

 参数:

  • url - 字符串,任意 URL;

  • img - Image 或 null 或 undefined,要与 URL 关联的图像:

    • 如果省略或未定义 img,则该函数返回与 URL 关联的现有图像(如果有);

    • 如果 img 为 null,则该函数删除上一个 bindImage(url,img) 调用设置的绑定;

 返回:

  • 图像,图像的引用。

  • 如果未找到图像,则为 null。

 例子:

 JS:

 document.bindImage("in-memory:dynback");

 CSS系统:

   div {
    /* uses image supplied by script: */
    background-image: url("in-memory:dynback");
  }

 url()

document.url([relpath]) : string

使用文档 URL 作为基返回 relpath 的绝对路径。

如果省略 relpath,则该方法返回文档本身的 url。