使用注释作为占位符似乎存在合理的(性能)问题 - 首先,没有可以匹配注释节点的 CSS 选择器,因此您将无法使用 eg 查询它们document.querySelectorAll(),这使得定位既复杂又缓慢评论元素。
我的问题是,是否有另一个我可以内联的元素,它没有任何可见的副作用?我见过一些人使用这个<meta>标签,但我调查了一下,在里面使用它<body>并不是有效的标记。
所以我选择了<script>标签。
使用自定义type属性,因此它实际上不会作为脚本执行,并将data-属性用于将要初始化占位符的脚本所需的任何初始化数据。
例如:
<script type="placeholder/foo" data-stuff="whatevs"></script>
然后只需查询这些标签 - 例如:
document.querySelectorAll('script[type="placeholder/foo"]')
然后根据需要替换它们 -这是一个普通的 DOM 示例。
请注意,placeholder在此示例中并没有定义任何“真实”的东西 - 您应该将其替换为 egvendor-name以确保您type不会与任何“真实”的东西发生冲突。