使用Shadow DOM将工具栏插入页面
Inserting a toolbar into page using Shadow DOM
如何使用向下推送所有其他内容的Shadow DOM将"工具栏"样式的标题插入页面?
这个过程在其他地方使用iframe有很好的记录,但使用Shadow DOM这样做是我很难做到的。
iframe通常不允许iframe中的元素与页面内容的其余部分重叠,因此它阻止在所述工具栏中创建干净的界面。
如果您想插入shadow DOM,一种方法是创建一个自定义元素,然后将其插入到DOM中。你可以用静态的方式来做这件事(也就是说,让它简单地替换你的iframe所在的位置),或者你可以用在页面上运行的JavaScript动态插入它。
这个小提琴展示了创建自定义元素的基础知识http://jsfiddle.net/h6a12p30/1/
<template id="customtoolbar">
<p>My toolbar</p>
</template>
<custom-toolbar></custom-toolbar>
和类似的Javascript
var CustomToolbar = Object.create(HTMLElement.prototype);
CustomToolbar.createdCallback = function() {
var shadowRoot = this.createShadowRoot();
var clone = document.importNode(customtoolbar.content, true);
shadowRoot.appendChild(clone);
};
var CToolbar = document.registerElement('custom-toolbar', {
prototype: CustomToolbar
});
相关文章:
- 删除CKEditor工具栏按钮,但不删除功能
- Sencha触摸:工具栏无法正常滚动
- 使用网格ID隐藏剑道网格工具栏
- 如何在IE中隐藏菜单栏,工具栏
- 将此事件添加到工具栏
- ExtJS--如何居中对齐两个工具栏按钮
- 在某些URL上显示火狐插件工具栏
- 如何将自定义图标添加到 JqGrid 顶级工具栏按钮
- 文本编辑工具栏解决方案 (js),具有低级自定义
- Ext JS工具栏和痕迹导航示例在JSFiddle中不起作用
- 如何在较新版本的 Free-JQGard 中重置搜索工具栏和搜索过滤器
- 尝试绘制从鼠标位置工具栏中选择的形状 - HTML5 CANVAS
- ExtJS 4-在调整窗口大小时,溢出的工具栏会失去控制器
- 如何在ExtJS 4.2中聚焦工具栏的按钮
- 单击Firefox工具栏按钮中的坐标
- 为什么我的 init() 函数没有运行?(安装 Firefox 扩展时自动添加工具栏按钮,但仅在首次运行时)
- 让jQuery顶部工具栏不那么跳跃
- JQGridPageing在通过过滤器工具栏应用过滤器后非常慢
- 使用Shadow DOM将工具栏插入页面
- 插入CKEditor specialchar插件到自定义工具栏不工作