元素:assignedSlot 属性

基线 广泛可用

此功能已得到良好建立,并且可在许多设备和浏览器版本上运行。它已在浏览器中可用,自 2020 年 1 月.

assignedSlotElement 接口的只读属性,它返回一个 HTMLSlotElement,表示节点插入到的 <slot> 元素。

一个 HTMLSlotElement 实例,或者如果元素未分配给插槽,或者如果关联的 Shadow DOM 附加时其 mode 设置为 closed,则为 null(有关更多详细信息,请参阅 Element.attachShadow)。

示例

在我们的 简单模板示例查看实际效果)中,我们创建了一个名为 <my-paragraph> 的简单自定义元素示例,其中附加了一个 Shadow DOM,然后使用包含名为 my-text 的插槽的模板的内容填充它。

当在文档中使用 <my-paragraph> 时,插槽由一个可插槽元素填充,方法是将其包含在具有值为 my-textslot 属性的元素内部。以下是一个这样的示例

html
<my-paragraph>
  <span slot="my-text">Let's have some different text!</span>
</my-paragraph>

在我们的 JavaScript 文件中,我们获取对上面显示的 <span> 的引用,然后记录对 <span> 插入到的原始 <slot> 元素的引用。

js
let slottedSpan = document.querySelector("my-paragraph span");
console.log(slottedSpan.assignedSlot); // logs '<slot name="my-text">'

规范

规范
DOM 标准
# dom-slotable-assignedslot

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。