开发
API

tt.canIPutStuffOverComponent

基础库 1.59.0 开始支持本方法,1.87.0 起支持对 native canvas 的判断。低版本需做兼容处理。这是一个同步方法。

小程序中的一些组件是由客户端实现的,如 videolive-playerad 等。

如果开发者希望通过 css 等手段往这些组件的上方放置一些其他组件,是需要依赖小程序所在 App 具备一定能力才可以实现的。

因此开发者可以使用本方法在小程序运行时判断某组件上方是否支持放置其他组件,并根据返回结果动态的决定小程序页面的实现方式。

语法

tt.canIPutStuffOverComponent(componentName);

参数说明

componentName

类型默认值必填说明
string小程序组件标签名称,如"video"、"live-player"等,对 canvas 组件的同层判断请见 canvas 组件

canvas 组件

对于 canvas 组件,需以 css 属性选择器方式传参。 对于 web canvas(即旧方案,不指定 type 属性值),入参为: "canvas"。

对于 native canvas(即新方案,指定 type 为 2d 或 webgl),支持以下入参:

  • canvas[type=2d]
  • canvas[type='2d']
  • canvas[type="2d"]
  • canvas[type=webgl]
  • canvas[type='webgl']
  • canvas[type="webgl"]

返回值

返回值是一个布尔值,表示是否支持在该类型组件上放置其他组件。

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

【代码示例 1】:判断 video 组件是否支持同层渲染。

// 是否可以在 video 组件上贴元素
// 若 result1 为 false,则意味着处在 video 组件上方的其他组件会被 video 遮挡
const result1 = tt.canIPutStuffOverComponent("video");

// 是否可以在 live-player 组件上贴元素
const result2 = tt.canIPutStuffOverComponent("live-player");

【代码示例 2】:判断旧方案 canvas 组件是否支持同层渲染。

// 是否可以在 canvas 组件上贴元素
const result1 = tt.canIPutStuffOverComponent("canvas");

【代码示例 3】:判断新方案 canvas 组件是否支持同层渲染。

// 是否可以在 canvas 组件上贴元素
const result1 = tt.canIPutStuffOverComponent('canvas[type="2d"]');

Bug & Tip

暂无。

点击纠错
评价此篇文档