一个可以随意添加多个序列的tag函数


Posted in Javascript onJuly 21, 2009

/**
* @author Supersha
* @QQ:770104121
*/
由于在没有规划好的情况下写的这个代码,写的比较粗糙,也没有添加注释。
主要特点:JavaScript代码和HTML完全分离;可以随意添加多个子div标签,自动扩展
JavaScript代码:

<script type="text/javascript"> 
var tag = function(parentTagId, sunTag){ 
var oldHtml = []; 
var spans=[]; 
var tagElemment = document.getElementById(parentTagId); 
var sunElems = tagElemment.getElementsByTagName(sunTag); 
for (var i = 0; i < sunElems.length; i++) { 
oldHtml[oldHtml.length] = sunElems[i].innerHTML; 
sunElems[i].style.display = "none"; 
} 
var newElem = document.createElement("div"); 
newElem.innerHTML = oldHtml[0]; //初始化div 
tagElemment.appendChild(newElem); 
var clearID = 0, index = 0; 
clearID = setInterval(function(){ 
if(index>=1) spans[index-1].style.border="1px dotted #ccc"; 
if(index==sunElems.length-1) index=0; 
newElem.innerHTML = oldHtml[index]; 
index++; 
spans[index-1].style.border="1px solid #666"; 
}, 2000); 
for (var i = 0; i < oldHtml.length; i++) { 
var span = document.createElement("span"); 
span.innerHTML = (i + 1).toString(); 
span.id="span_tab"+i; 
span.html = oldHtml[i]; //存????脑?淼?iv?面的HTML 
spans[i]=span; 
span.onmouseover = function(){ 
if(index>=1) spans[index-1].style.border="1px dotted #ccc"; 
newElem.innerHTML = this.html; //???x值 
clearInterval(clearID); 
} 
span.onmouseout = function(){ 
index=parseInt(this.innerHTML); 
if(index>=1) spans[index-1].style.border="1px solid #666"; 
clearID = setInterval(function(){ 
if(index>=1) spans[index-1].style.border="1px dotted #ccc"; 
if(index==sunElems.length-1) index=0; 
newElem.innerHTML = oldHtml[index]; 
index++; 
spans[index-1].style.border="1px solid #666"; 
}, 2000); 
} 
tagElemment.appendChild(span); 
span = null; 
} 
spans[0].style.border="1px solid #666"; //初始化span 
} 
onload = function(){ 
tag("tag", "div"); //调用tag函数 
} 
</script> 
<style type="text/css"> 
#tag { 
border: 1px solid #eee; 
float: left; 
} #tag span { 
border: 1px dotted #ccc; 
background: #eee; 
padding: 1px 6px; 
margin-right: 8px; 
} #tag span:hover { 
background: #ccc; 
border: 1px solid #666; 
} 
</style>

HTML代码:
<div id="tag"> 
<div> 
<p> 
<b>Tag demo 1,</b> 
I will achive it. 
</p> 
</div> 
<div> 
<p> 
<b>Tag demo 2,</b> 
I will achive it. 
</p> 
</div> 
<div> 
<p> 
<b>Tag demo 3,</b> 
I will achive it. 
</p> 
</div> 
<div> 
<p> 
<b>Tag demo 4,</b> 
I will achive it. 
</p> 
</div> 
<div> 
<p> 
<b>Tag demo 5,</b> 
I will achive it. 
</p> 
</div> 
<div> 
<p> 
<b>Tag demo 6,</b> 
I will achive it. 
</p> 
</div> 
<!--....可以随意添加多个tag....--> 
</div>
Javascript 相关文章推荐
extjs 初始化checkboxgroup值的代码
Sep 21 Javascript
JS来动态的修改url实现对url的增删查改
Sep 05 Javascript
jQuery中change事件用法实例
Dec 26 Javascript
chrome调试javascript详解
Oct 21 Javascript
JavaScript代码因逗号不规范导致IE不兼容的问题
Feb 25 Javascript
JS简单编号生成器实现方法(附demo源码下载)
Apr 05 Javascript
网站申请不到支付宝接口、微信接口,免接口收款实现方式几种解决办法
Dec 14 Javascript
微信小程序 template模板详解及实例代码
Mar 09 Javascript
Javascript实现异步编程的过程
Jun 18 Javascript
小程序调用微信支付的方法
Sep 26 Javascript
微信小程序实现横向滚动导航栏效果
Dec 12 Javascript
详解ES6 中的Object.assign()的用法实例代码
Jan 11 Javascript
一个cssQuery对象 javascript脚本实现代码
Jul 21 #Javascript
js计算页面刷新的次数
Jul 20 #Javascript
[原创]IE view-source 无法查看看源码 JavaScript看网页源码
Jul 19 #Javascript
Prototype Hash对象 学习
Jul 19 #Javascript
Prototype Array对象 学习
Jul 19 #Javascript
Prototype PeriodicalExecuter对象 学习
Jul 19 #Javascript
Prototype String对象 学习
Jul 19 #Javascript
You might like
hadoop常见错误以及处理方法详解
2013/06/19 PHP
PHP中source #N问题的解决方法
2014/01/27 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
PHP常用工具类大全附全部代码下载
2015/12/07 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
2017/12/21 PHP
Laravel监听数据库访问,打印SQL的例子
2019/10/24 PHP
关于Javascript 对象(object)的prototype
2014/05/09 Javascript
jQuery中的siblings用法实例分析
2015/12/24 Javascript
JavaScript的React Web库的理念剖析及基础上手指南
2016/05/10 Javascript
详解nodejs微信公众号开发——1.接入微信公众号
2017/04/10 NodeJs
vue基于Vue2.0和高德地图的地图组件实例
2017/04/28 Javascript
nodejs+mongodb aggregate级联查询操作示例
2018/03/17 NodeJs
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
JS实现的雪花飘落特效示例
2019/12/03 Javascript
JS实现滑动插件
2020/01/15 Javascript
JavaScript实现移动端弹窗后禁止滚动
2020/05/25 Javascript
让python的Cookie.py模块支持冒号做key的方法
2010/12/28 Python
用pywin32实现windows模拟鼠标及键盘动作
2014/04/22 Python
python基于隐马尔可夫模型实现中文拼音输入
2016/04/01 Python
python 内置函数filter
2017/06/01 Python
python 限制函数调用次数的实例讲解
2018/04/21 Python
django1.11.1 models 数据库同步方法
2018/05/30 Python
数据清洗--DataFrame中的空值处理方法
2018/07/03 Python
Python实现的读取文件内容并写入其他文件操作示例
2019/04/09 Python
Pytorch实现神经网络的分类方式
2020/01/08 Python
Python计算机视觉里的IOU计算实例
2020/01/17 Python
pandas数据处理之绘图的实现
2020/06/15 Python
浅谈amaze-ui中datepicker和datetimepicker注意的几点
2020/08/21 HTML / CSS
canvas绘制图片drawImage使用方法
2020/09/15 HTML / CSS
公司财务自我评价分享
2013/12/17 职场文书
2014两会学习心得:榜样精神伴我行
2014/03/17 职场文书
感恩母亲节演讲稿
2014/05/07 职场文书
妈妈活动方案
2014/08/15 职场文书
小学语文复习计划
2015/01/19 职场文书
导游词之新疆尼雅遗址
2019/10/16 职场文书
PostgreSQL通过oracle_fdw访问Oracle数据的实现步骤
2021/05/21 PostgreSQL