Textarea与懒惰渲染实现代码


Posted in Javascript onJanuary 04, 2012

代码如下。

<div> 
立即渲染内容 
<ul> 
<li>张三<img src="p01.jpg"/></li> 
<li>张四<img src="p02.jpg"/></li> 
</ul> 
</div> 
<div> 
<textarea id="lazyRender01" style="display:none"> 
懒惰渲染内容 
<ul> 
<li>李三<img src="p11.jpg"/></li> 
<li>李四<img src="p12.jpg"/></li> 
</ul> 
</textarea> 
</div> 
<script> 
setTimeout(function(){//懒惰渲染 
var el =document.getElementById('lazyRender01'); 
el.parentNode.innerHTML = el.value; 
},1000); 
</script>

代码的好处是:让李三李四对应的内容,在懒惰渲染之前,不形成dom节点,不请求图片。
但有的同学会问:“Textarea里的内容,对搜索引擎不友好。”
没问题,这个也很好解决的:
<div> 
立即渲染内容 
<ul> 
<li>张三<img src="p01.jpg"/></li> 
<li>张四<img src="p02.jpg"/></li> 
</ul> 
</div> 
<div> 
<script>document.write('<textarea id="lazyRender01" style="display:none">');</script> 
懒惰渲染内容 
<ul> 
<li>李三<img src="p11.jpg"/></li> 
<li>李四<img src="p12.jpg"/></li> 
</ul> 
</textarea> 
</div> 
<script> 
setTimeout(function(){//懒惰渲染 
var el =document.getElementById('lazyRender01'); 
el.parentNode.innerHTML = el.value; 
},1000); 
</script>

代码的区别很简单,只是把'<textarea id="lazyRender01">'这一段通过js的document.write输出来。
但结果却有了很大的不同:就算浏览器不支持js,一切内容也还是能原样显示出来。
Javascript 相关文章推荐
jQuery之选择组件的深入解析
Jun 19 Javascript
Easyui Treegrid改变默认图标的方法
Apr 29 Javascript
jQuery的ajax下载blob文件
Jul 21 Javascript
jQuery表单对象属性过滤选择器实例详解
Sep 13 Javascript
微信小程序 教程之WXML
Oct 18 Javascript
ES6中Math对象新增的方法实例详解
Apr 25 Javascript
vue监听scroll的坑的解决方法
Sep 07 Javascript
详解Node 定时器
Feb 26 Javascript
200行代码实现blockchain 区块链实例详解
Mar 14 Javascript
让你5分钟掌握9个JavaScript小技巧
Jun 09 Javascript
Node.js使用supervisor进行开发中调试的方法
Mar 26 Javascript
Ant Design Pro 之 ProTable使用操作
Oct 31 Javascript
js中有关IE版本检测
Jan 04 #Javascript
国外大牛IE版本检测!现在IE都到9了,IE检测代码
Jan 04 #Javascript
IE的有条件注释判定IE版本详解(附实例代码)
Jan 04 #Javascript
js变量以及其作用域详解
Jul 18 #Javascript
分享一个asp.net pager分页控件
Jan 04 #Javascript
调试Node.JS的辅助工具(NodeWatcher)
Jan 04 #Javascript
DOM和XMLHttpRequest对象的属性和方法整理
Jan 04 #Javascript
You might like
php中的观察者模式简单实例
2015/01/20 PHP
php使用MySQL保存session会话的方法
2015/06/26 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
2016/06/13 PHP
PHP laravel中的多对多关系实例详解
2017/06/07 PHP
input+select(multiple) 实现下拉框输入值
2009/05/21 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
jQuery插件jPaginate实现无刷新分页
2015/05/04 Javascript
node.js回调函数之阻塞调用与非阻塞调用
2015/11/13 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
Angular数据绑定机制原理
2018/04/17 Javascript
vue-router重定向和路由别名的使用讲解
2019/01/19 Javascript
了解前端理论:rscss和rsjs
2019/05/23 Javascript
微信小程序开发常见问题及解决方案
2019/07/11 Javascript
原生js基于canvas实现一个简单的前端截图工具代码实例
2019/09/10 Javascript
关于vue项目中搜索节流的实现代码
2019/09/17 Javascript
原生js实现二级联动菜单
2019/11/27 Javascript
vue 子组件修改data或调用操作
2020/08/07 Javascript
jQuery实现动态加载瀑布流
2020/09/01 jQuery
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
[58:09]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第三场 6.2
2018/06/03 DOTA
[01:03:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第一场 1月29日
2021/03/11 DOTA
Python判断变量是否已经定义的方法
2014/08/18 Python
Windows下安装python2.7及科学计算套装
2015/03/05 Python
Python的Django框架下管理站点的基本方法
2015/07/17 Python
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
pycharm重置设置,恢复默认设置的方法
2018/10/22 Python
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
New Balance美国官网:运动鞋和健身服装
2017/04/11 全球购物
Ancheer官方户外和运动商店:销售电动自行车
2019/08/07 全球购物
高一数学教学反思
2014/02/07 职场文书
统计系教授推荐信
2014/02/28 职场文书
书香家庭事迹材料
2014/05/09 职场文书
2014年小班保育员工作总结
2014/12/23 职场文书
2015年党风廉政建设工作总结
2015/04/09 职场文书
公司放假通知范文
2015/04/14 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书