博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
html 中shadow DOM 的使用
阅读量:5870 次
发布时间:2019-06-19

本文共 1930 字,大约阅读时间需要 6 分钟。

什么是shadow DOM?

An important aspect of web components is encapsulation — being able to keep the markup structure, style, and behavior hidden and separate from other code on the page so that different parts do not clash, and the code can be kept nice and clean. The Shadow DOM API is a key part of this, providing a way to attach a hidden separated DOM to an element. This article covers the basics of using the Shadow DOM.

下面这个是shadow DOM 的使用例子:

html:

	
shadowDOM
这里是不显示出来的

  javascript:

function createShadowDOM(elem) {	var root = elem.createShadowRoot();	root.appendChild(createStyle());	root.appendChild(createInputDiv("姓名","name"));}function createStyle() {	var style = document.createElement('style');	style.textContent = 'div.input-div { height: 30px; width: 250px; }' +	'font.input-font { line-height: 30px;font-size: 16px;color: #495A80; margin-right: 10px;}'+	'span.input-area {width: 200px;height: 25px;line-height: 25px;padding-left: 5px;display:inline-block;color: #666;font-size: 16px;border: 1px solid #999;border-radius: 3px;}';	return style;}function createInputDiv(font, name) {	var inputDiv = document.createElement('div');	inputDiv.className = 'input-div';	inputDiv.innerHTML = "" + font + "";	return inputDiv;}createShadowDOM(document.querySelector("#div"));document.querySelector('button').addEventListener('click', function() {	console.log(document.querySelector('#div').shadowRoot.querySelector('#name').innerHTML);})

  结果:

 

This article assumes you are already familiar with the concept of the  — a tree-like structure of connected nodes that represents the different elements and strings of text appearing in a markup document (usually an HTML document in the case of web documents). As an example, consider the following HTML fragment:

 

 

两个其前端前沿网站: 

js代码在线编辑:

兼容性查询:

 

 

----------------------------------------------------------------------------------------------------------

 参考:

转载地址:http://obxnx.baihongyu.com/

你可能感兴趣的文章
JDK8中ArrayList的工作原理剖析
查看>>
安装gulp及相关插件
查看>>
如何在Linux用chmod来修改所有子目录中的文件属性?
查看>>
Applet
查看>>
高并发环境下,Redisson实现redis分布式锁
查看>>
java基础-System类常用方法介绍
查看>>
乌克兰基辅一世遗修道院起火 现场火光照亮夜空
查看>>
[iOS 10 day by day] Day 2:线程竞态检测工具 Thread Sanitizer
查看>>
Centos/Ubuntu下安装nodejs
查看>>
关于浏览器的cookie
查看>>
Hyper-V 2016 系列教程30 机房温度远程监控方案
查看>>
国内先进的智能移动广告聚合平台-KeyMob聚合
查看>>
我的友情链接
查看>>
ubuntu 镜像站部署
查看>>
Xshell 连接虚拟机慢 解决方案
查看>>
我的友情链接
查看>>
PHP - 如何打印函数调用树
查看>>
js闭包
查看>>
寒假。3.3.G - Common Child (最大公共子序)
查看>>
052(四十二)
查看>>