SVGFEDisplacementMapElement: yChannelSelector 属性

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

SVGFEDisplacementMapElement 接口的只读属性 yChannelSelector 反映了给定 <feDisplacementMap> 元素的 yChannelSelector 属性。它接受此接口上定义的 SVG_CHANNEL_* 常量之一。

一个 SVGAnimatedEnumeration 对象。

示例

访问 yChannelSelector 属性

在此示例中,<filter> 中定义的 <feDisplacementMap> 元素包含一个 yChannelSelector 属性。

html
<svg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <filter id="displacementFilter">
      <!-- Displacement Map with yChannelSelector set to Red Channel -->
      <feDisplacementMap in="SourceGraphic" scale="20" yChannelSelector="G">
        <feFuncR type="table" tableValues="0 1" />
      </feDisplacementMap>
    </filter>
  </defs>
  <rect
    x="20"
    y="20"
    width="100"
    height="100"
    fill="green"
    filter="url(#displacementFilter)" />
</svg>

我们可以访问 yChannelSelector 属性并获取其值

js
const displacementMap = document.querySelector("feDisplacementMap");

console.log(displacementMap.yChannelSelector.baseVal); // Output: 2 (SVG_CHANNEL_G)

规范

规范
滤镜效果模块第 1 级
# dom-svgfedisplacementmapelement-ychannelselector

浏览器兼容性

另见