Html 无法使用document.exece命令添加自定义元素
我正在尝试使用Html 无法使用document.exece命令添加自定义元素,html,polymer,Html,Polymer,我正在尝试使用document.execCommand将自定义元素添加到可编辑的div中,详细信息请参见 但是,当我尝试使用execCommand添加自定义聚合元素时,浏览器无法识别该自定义元素,即使它已导入范围 var video-id='FnoL3d33U8o'//a youtube video Id var html = '<p><div><custom-video-element width="454" height="280" video-
document.execCommand
将自定义元素添加到可编辑的div中,详细信息请参见
但是,当我尝试使用execCommand添加自定义聚合元素时,浏览器无法识别该自定义元素,即使它已导入范围
var video-id='FnoL3d33U8o'//a youtube video Id
var html = '<p><div><custom-video-element width="454" height="280" video-id="'+videoUrl+'"></custom-video-element></div></p>';
document.execCommand('insertHTML', false, html);
var video id='FnoL3d33U8o'//一个youtube视频id
var html='';
document.execCommand('insertHTML',false,html);
但这没有帮助,而且浏览器无法识别自定义视频元素。如果有其他方法,或者我正在追逐海市蜃楼,请帮助我 如果您知道需要附加什么元素,那么可以使用 如何实现这一目标有多种选择,但在您的情况下:
var p = document.createElement("p");
var div = document.createElement("div");
var custom = document.createElement("custom-video-element")
custom.setAttribute("video-id", videoUrl);
.. setting another attributes ..
div.appendChild(custom);
p.appendChild(div);
document.appendChild(p);
就这样。这应该很有效
当然,可能会有更好、更简单的解决方案,但对你来说,这并不是那么糟糕
如果在JS中创建更大的html结构,您将执行以下操作:
var div = document.createElement("div");
var inner = "<div class="test"><div></div><p class="p"></p></div>;
div.innerHTML = inner;
div.querySelector(".p").appendChild(document.createElement("custom-video-element"));
var div=document.createElement(“div”);
var internal=“;
div.innerHTML=内部;
div.querySelector(“.p”).appendChild(document.createElement(“自定义视频元素”));