ES6 使用字符串模板生成HTML、及扩展运算符[...]的使用

<html>

<head>
<title>ES6</title>
<style>
input.active{
   background:red;
}
#first > div {
    width:200px;
	height:200px;
	background:#ccc;
	display:none;
}
#first > div:first-of-type{
   display:block;
}
</style>
</head>

<body> 
<script>
    const $=obj=>[...document.querySelectorAll(obj)];
	let json = {
	  "input" : ["1","2","3"],
	  "content" : ["第一界面","第二界面","第三界面"]
	};
	//模板生成
	let node = data =>`<div id=first>
	${data.input.map((i)=>`<input type=button value=${i}>`).join('')}
	${data.content.map((i)=>`<div>${i}</div>`).join('')}
	</div>`;
	document.body.innerHTML= node(json);
	let allInput = new Set($('input'));
	[...allInput][0].className = 'active';
	let allDiv = new Set($('#first > div'));
	[...allInput].forEach((v,i)=>{
	   v['onclick'] = ()=>{
		  [...allInput].forEach((v)=>{v.className=''});
		  [...allInput][i].className='active';
	      [...allDiv].forEach((v)=>{v.style.display='none';});
		  [...allDiv][i].style.display='block';
		  
	   }
	});
	
</script>
</body>

</html>

有喜欢的朋友可以关注下头条号《老徐聊技术

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值