SVGSVGElement
Baseline 广泛可用 *
SVGSVGElement 接口提供了对 <svg> 元素的属性的访问,以及操作它们的方法。此接口还包含各种杂项常用工具方法,例如矩阵操作以及控制视觉渲染设备重绘时间的能力。
实例属性
此接口还继承了其父接口 SVGGraphicsElement 的属性。
SVGSVGElement.x只读-
一个
SVGAnimatedLength对象,对应于给定<svg>元素的x属性。 SVGSVGElement.y只读-
一个
SVGAnimatedLength对象,对应于给定<svg>元素的y属性。 SVGSVGElement.width只读-
一个
SVGAnimatedLength对象,对应于给定<svg>元素的width属性。 SVGSVGElement.height只读-
一个
SVGAnimatedLength对象,对应于给定<svg>元素的height属性。 SVGSVGElement.viewBox只读-
一个
SVGAnimatedRect对象,对应于给定<svg>元素的viewBox属性。 SVGSVGElement.preserveAspectRatio只读-
一个
SVGAnimatedPreserveAspectRatio对象,对应于给定<svg>元素的preserveAspectRatio属性。 SVGSVGElement.pixelUnitToMillimeterX已废弃-
一个浮点数,表示视口 X 轴上像素单位(由 CSS2 定义)的大小,其范围约为 70dpi 到 120dpi,并且在支持此功能的系统上,可能实际与目标介质的特性匹配。在无法知道像素大小的系统上,将提供一个合适的默认像素大小。
SVGSVGElement.pixelUnitToMillimeterY已废弃-
一个浮点数,表示视口 Y 轴上像素单位的大小。
SVGSVGElement.screenPixelToMillimeterX已废弃-
DOM Level 2 中的用户界面(UI)事件指示了给定 UI 事件发生的屏幕位置。当浏览器实际知道“屏幕单位”的物理大小时,此浮点属性将表达该信息;否则,用户代理将提供一个合适的默认值(例如
.28mm)。 SVGSVGElement.screenPixelToMillimeterY已废弃-
视口 Y 轴上屏幕像素的相应大小。
SVGSVGElement.useCurrentView已废弃 非标准-
当前最内层 SVG 文档片段的初始视图(即放大和平移之前)可以是“标准”视图(即基于
<svg>元素上的属性,例如viewBox),也可以是“自定义”视图(即指向特定<view>或其他元素的超链接)。如果初始视图是“标准”视图,则此属性为false。如果初始视图是“自定义”视图,则此属性为true。 SVGSVGElement.currentView已废弃 非标准-
一个
SVGViewSpec,定义了当前最内层 SVG 文档片段的初始视图(即放大和平移之前)。其含义取决于具体情况:如果初始视图是“标准”视图,则currentView中的viewBox、preserveAspectRatio和zoomAndPan值将与SVGSVGElement上直接对应的 DOM 属性值匹配。currentView中的transform值将为null。
如果初始视图是链接到
<view>元素,则currentView中的viewBox、preserveAspectRatio和zoomAndPan值将与给定<view>元素的相应属性值对应。currentView中的transform值将为null。
如果初始视图是链接到其他元素(即非
<view>),则currentView中的viewBox、preserveAspectRatio和zoomAndPan值将与最近的祖先<svg>元素上直接对应的 DOM 属性值匹配。currentView中的transform值将为null。
如果初始视图是使用 SVG 视图规范片段标识符(即
#svgView(…))链接到 SVG 文档片段,则currentView中的viewBox、preserveAspectRatio、zoomAndPan和transform值将与 SVG 视图规范片段标识符中的值对应。
SVGSVGElement.currentScale-
在最外层
<svg>元素上,此浮点属性指示相对于初始视图的当前缩放因子,以考虑用户的放大和平移操作。DOM 属性currentScale和currentTranslate等价于 2×3 矩阵[a b c d e f] = [currentScale 0 0 currentScale currentTranslate.x currentTranslate.y]。如果启用了“放大”(即zoomAndPan="magnify"),则效果就像在 SVG 文档片段的最外层(即最外层<svg>元素之外)放置了一个额外的变换。 SVGSVGElement.currentTranslate只读-
一个
DOMPointReadOnly对象,表示考虑用户对最外层<svg>元素“放大”所对应的平移因子。对于非最外层<svg>元素,其行为未定义。
实例方法
此接口还继承了其父接口 SVGGraphicsElement 的方法。
SVGSVGElement.suspendRedraw()已废弃-
接受一个超时值,表示在以下情况发生之前不应进行重绘:
已调用相应的
unsuspendRedraw()、已调用unsuspendRedrawAll(),或其计时器已超时。在不支持交互性的环境(例如,打印媒体)中,不应暂停重绘。对
suspendRedraw()和unsuspendRedraw()的调用应该(但非必须)成对出现。为了在发生一组 SVG DOM 更改时暂停重绘操作,请在 SVG DOM 更改之前调用类似以下的方法:
jsconst suspendHandleID = suspendRedraw(maxWaitMilliseconds);并在更改之后调用类似以下的方法:
jsunsuspendRedraw(suspendHandleID);请注意,可以同时使用多个
suspendRedraw()调用,并且每个此类方法调用都独立于其他suspendRedraw()方法调用。 SVGSVGElement.unsuspendRedraw()已废弃-
通过提供先前
suspendRedraw()调用返回的唯一暂停句柄 ID,取消指定的suspendRedraw()。 SVGSVGElement.unsuspendRedrawAll()已废弃-
取消所有当前活动的
suspendRedraw()方法调用。此方法在 SVG DOM 调用集结束时最有用,以确保所有待处理的suspendRedraw()方法调用已被取消。 SVGSVGElement.forceRedraw()已废弃-
在支持交互性的渲染环境中,强制用户代理立即重绘视口中所有需要更新的区域。
SVGSVGElement.pauseAnimations()-
暂停(即停止)此
<svg>元素对应的 SVG 文档片段中定义的所有当前运行的动画,导致此文档片段对应的动画时钟停止,直到其取消暂停。 SVGSVGElement.unpauseAnimations()-
恢复(即取消暂停)SVG 文档片段中定义的当前运行动画,导致动画时钟从暂停时的时间继续。
SVGSVGElement.animationsPaused()-
如果此 SVG 文档片段处于暂停状态,则返回
true。 SVGSVGElement.getCurrentTime()-
返回相对于当前 SVG 文档片段开始时间的当前时间(以秒为单位)。如果在文档时间线开始之前调用
getCurrentTime()(例如,通过在文档的SVGLoad事件分派之前在<script>元素中运行的脚本),则返回0。 SVGSVGElement.setCurrentTime()-
调整此 SVG 文档片段的时钟,建立一个新的当前时间。如果在文档时间线开始之前调用
setCurrentTime()(例如,通过在文档的SVGLoad事件分派之前在<script>元素中运行的脚本),则方法最后一次调用中的秒值给出文档时间线开始后将跳转到的时间。 SVGSVGElement.getIntersectionList()-
返回与提供的矩形相交的图形元素
NodeList。只有当相同的图形元素可以成为pointer-events处理中定义的指针事件的目标时,才认为每个候选图形元素匹配。 SVGSVGElement.getEnclosureList()-
返回其渲染内容完全包含在提供的矩形内的图形元素的
NodeList。只有当相同的图形元素可以成为pointer-events处理中定义的指针事件的目标时,才认为每个候选图形元素匹配。 SVGSVGElement.checkIntersection()-
如果给定元素的渲染内容与提供的矩形相交,则返回
true。只有当相同的图形元素可以成为pointer-events处理中定义的指针事件的目标时,才认为每个候选图形元素匹配。 SVGSVGElement.checkEnclosure()-
如果给定元素的渲染内容完全包含在提供的矩形内,则返回
true。只有当相同的图形元素可以成为pointer-events处理中定义的指针事件的目标时,才认为每个候选图形元素匹配。 SVGSVGElement.deselectAll()-
取消选择任何选定的对象,包括任何文本字符串和输入框的选择。
SVGSVGElement.createSVGNumber()-
在任何文档树之外创建一个
SVGNumber对象。该对象初始化为0。 SVGSVGElement.createSVGLength()-
在任何文档树之外创建一个
SVGLength对象。该对象初始化为0用户单位。 SVGSVGElement.createSVGAngle()-
在任何文档树之外创建一个
SVGAngle对象。该对象初始化为0度(无单位)的值。 SVGSVGElement.createSVGPoint()-
在任何文档树之外创建一个
DOMPoint对象。该对象初始化为用户坐标系中的点(0,0)。 SVGSVGElement.createSVGMatrix()-
在任何文档树之外创建一个
DOMMatrix对象。该对象初始化为单位矩阵。 SVGSVGElement.createSVGRect()-
在任何文档树之外创建一个
SVGRect对象。该对象初始化为所有值都设置为0用户单位。 SVGSVGElement.createSVGTransform()-
在任何文档树之外创建一个
SVGTransform对象。该对象初始化为单位矩阵变换 (SVG_TRANSFORM_MATRIX)。 SVGSVGElement.createSVGTransformFromMatrix()-
在任何文档树之外创建一个
SVGTransform对象。该对象初始化为给定的矩阵变换(即SVG_TRANSFORM_MATRIX)。参数矩阵的值被复制,矩阵参数不会被用作SVGTransform::matrix。 SVGSVGElement.getElementById()-
在此 SVG 文档片段(即搜索仅限于文档树的子集)中搜索
id由elementId给定的元素。如果找到元素,则返回该元素。如果不存在此类元素,则返回null。如果多个元素具有此 id,则行为未定义。
事件处理器
以下 Window onXYZ 事件处理程序属性也作为别名可用,目标是 window 对象。但是,建议直接在 window 对象而不是 SVGSVGElement 上监听它们。
注意:在 SVGSVGElement 上使用 addEventListener() 对下面列出的 onXYZ 事件处理程序不起作用。请改为在 window 对象上监听事件。
SVGSVGElement.onafterprint-
在相关文档开始打印或打印预览关闭后触发。
SVGSVGElement.onbeforeprint-
在相关文档即将打印或预览打印时触发。
SVGSVGElement.onbeforeunload-
当窗口、文档及其资源即将被卸载时触发。
SVGSVGElement.ongamepadconnected-
当浏览器检测到游戏手柄已连接或首次使用游戏手柄的按钮/轴时触发。
SVGSVGElement.ongamepaddisconnected-
当浏览器检测到游戏手柄已断开连接时触发。
SVGSVGElement.onhashchange-
当 URL 的片段标识符(以
#符号开头并跟随的部分)发生变化时触发。 SVGSVGElement.onlanguagechange-
在用户首选语言更改时触发。
SVGSVGElement.onmessage-
当窗口收到消息时触发,例如来自另一个浏览上下文的
Window.postMessage()调用。 SVGSVGElement.onmessageerror-
当窗口收到无法反序列化的消息时触发。
SVGSVGElement.onoffline-
当浏览器失去网络访问权限并且
Navigator.onLine的值切换为false时触发。 SVGSVGElement.ononline-
当浏览器重新获得网络访问权限并且
Navigator.onLine的值切换为true时触发。 SVGSVGElement.onpagehide-
当浏览器在显示会话历史记录中的不同页面时隐藏当前页面时触发。
SVGSVGElement.onpageshow-
当浏览器由于导航而显示窗口文档时触发。
SVGSVGElement.onpopstate-
当用户浏览会话历史记录时,活动历史记录条目更改时触发。
SVGSVGElement.onrejectionhandled-
每当 JavaScript
Promise被拒绝且该拒绝已处理时触发。 SVGSVGElement.onstorage-
当在另一个文档的上下文中修改存储区域 (
localStorage) 时触发。 SVGSVGElement.onunhandledrejection-
每当
Promise被拒绝但该拒绝未处理时触发。 SVGSVGElement.onunload-
当文档正在卸载时触发。
规范
| 规范 |
|---|
| Scalable Vector Graphics (SVG) 2 # 接口 SVGSVGElement |
浏览器兼容性
加载中…