问题标签 [html5-template]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
452 浏览

javascript - 如何使用 vanilla js 在自包含的自定义元素中剔除模板?

我有一个自定义组件,它只显示一张塔罗牌。在自定义元素之前,我定义了一个模板。
在我的 wc 的 connectedCallback 中,我将模板本身附加到 shadowroot,然后通过在 shadowroot 中克隆它来将其标记出来。我这样做有两个原因:

  1. 我希望我的 wc 组件是一个独立的模块;因此,我想在与自定义元素相同的位置定义我的模板。
  2. 这似乎是删除我的模板以使其可用而不将其粘贴在所有者文档中的唯一方法。

    /li>

这造成的问题是我在我的页面上使用的每个塔罗牌组件都有相同的模板是一个孩子,都具有相同的 id。既然他们在shadowroot中,这有关系吗?虽然闻起来很有趣...

我的目标只是试图了解 Web 组件规范如何组合在一起。我的问题是,有没有更好的方法可以将我的组件代码保持在一起并且不参考所有者文档?由于大多数浏览器供应商没有采用 html 导入,因此模板规范是否与自定义元素大多不兼容?

0 投票
3 回答
207 浏览

javascript - 火狐上shadowdomv1的兼容性

我正在尝试使用 ShadowDomv1(使用https://github.com/webcomponents/webcomponentsjshttps://github.com/webcomponents/shadycss),但它不起作用。

ShadowDom 本身可以工作,但 css 没有被封装(正如我们可以看到的h2css 规则)。

它在 Chrome 和 Safari 上按预期工作(但它们都支持 ShadowDomv1)。

我错过了什么还是不可能?

这里的jsbin:http ://jsbin.com/maqohoxowu/edit?html,output

和代码:

0 投票
2 回答
2770 浏览

javascript - 什么是“document.currentScript”和“ownerDocument”?

我正在学习 Web 组件。要获取模板,我需要这样做:

代替:

我根本不明白这部分:(document.currentScript||document._currentScript).ownerDocument

什么是currentScript,什么是ownerDocument?什么目的?为什么它起作用。请注意,我上面显示的模板代码是通过link元素拉入的。

注意,这与这篇文章和这篇文章有关。我只是想了解关键字,我没有任何特别的问题。

0 投票
1 回答
909 浏览

google-chrome - 在 shadow-dom 中提供样式的情况下,鼠标双击时的文本选择不起作用

哪些步骤将重现该问题:

(1)在chrome浏览器中运行以下代码

(2)尝试在“With Shadow dom”和“Without Shadow dom”两个部分中双击“Second”一词。

预期结果:应该选择“第二”这个词(因为它在第-2节中工作)

实际行为:双击不选择文本。

0 投票
1 回答
77 浏览

html - 为 HTML 片段声明 doctype 有意义吗?

如果我有一个 HTML5 组件/WebComponent 的component.html文件定义了 a ,那么在 中声明<template>是否有意义?也就是说,以下哪个是最佳实践?<!DOCTYPE html>component.html

或者

0 投票
3 回答
255 浏览

javascript - 未捕获的 TypeError:tplContent.importNode 不是函数

我正在阅读“Web Components mit Polymer”一书并尝试了书中的以下代码:

但是我只是在第二个 JS 行中停止了错误:

未捕获的 TypeError:tplContent.importNode 不是函数

我在 Ubuntu 上使用 Google Chrome 版本 63.0.3239.84。有人可以帮我处理这个订单吗?

问候, 阿图尔

0 投票
1 回答
308 浏览

web-component - Web 组件和影子根

我使用以下代码创建了一个 Web 组件,其中我使用了模板:

但是在控制台的影子根目录中,我看到了这个不一样的内容:

在此处输入图像描述

0 投票
3 回答
3414 浏览

javascript - 浏览器如何处理