const dom = new Proxy({}, {
get(target, property) {
return function(attrs = {}, ...children) {
const el = document.createElement(property);
for (let prop of Object.keys(attrs)) {
el.setAttribute(prop, attrs[prop]);
}
for (let child of children) {
if (typeof child === 'string') {
child = document.createTextNode(child);
}
el.appendChild(child);
}
return el;
}
}
}); const el = dom.div({},
'Hello, my name is ',
dom.a({href: '//example.com'}, 'Mark'),
'. I like:',
dom.ul({},
dom.li({}, 'The web'),
dom.li({}, 'Food'),
dom.li({}, '…actually that\'s it')
)
); document.body.appendChild(el);

最新文章

  1. C#——this关键字(1)
  2. CentOS 7.2 安装配置mysql主从服务器
  3. 移动端弹性布局--flex
  4. js 循环切换图片
  5. java 访问mysql 实例
  6. Java-接口练习
  7. 浏览器判断是否安装APP
  8. Python 虚拟环境:Virtualenv
  9. xcode 开发ios兼容性问题的上下黑边 和 coco2d-x 游戏分辨率适配 ResolutionPolicy::FIXED_WIDTH 都会引起上下黑边问题!!!
  10. Hyper-V性能监控_CPU
  11. 再谈Cookies欺骗
  12. hihoCoder 1388 Periodic Signal(FFT)
  13. shell 删除颜色代码
  14. 【原创】MIPS相关
  15. gson所需jar包
  16. mac环境下配置nginx
  17. WebShell代码分析溯源(第1题)
  18. jqueryui和easyui区别
  19. json包含单双引号问题解决方案
  20. 第8课 goto和void分析

热门文章

  1. unity的坑
  2. [Cycle.js] The Cycle.js principle: separating logic from effects
  3. 理解JavaScript 的原型属性
  4. 使用WinAPI全局热键注册和全局模拟按键
  5. DTO学习系列之AutoMapper(四)
  6. int.Tryparse() 、int.parse()、Convert.To32() 的区别
  7. ZigZag-LeetCode
  8. 慕课linux学习笔记(五)常用命令(2)
  9. Java 执行终端命令实现,调用执行另外一个Java文件
  10. IE attachEvent事件处理程序(事件绑定的函数)的this指向的是window不是执行当前事件的dom元素