[javascript]鼠标滑过列表文字显示图片及详细信息
祝端午节快乐!@&@
此效果类似于当当网首页右侧的的7日畅销榜,因为工作需要,编写了一个,现分享出来,恐有不足之处,望提出宝贵意见,共同进步!
此效果的难度,不在js,而在xhtml+css,为了实现代码的最优化和浏览器良好的兼容性,确实花了不少功夫,最后选择使用无序列表ul>li;
js是封装好的,与文档分离开,同一个页面可以实现多处这样的效果,且互不干扰;
1.xhtml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <div id= "ranklist" > <ul class = "topcn" > <li> <span>1</span> <p style= "display:none;" ><code>2007-2-10</code><a href= "#" >鼠标滑过列表文字显</a></p> <div style= "display:block;" > <a href= "#" ><img src= "images/imgs.jpg" title= "图片" /></a> <a href= "#" >鼠标滑过列表文字显示图片及详细信息信息信息</a> <em>日增:666</em> </div> </li> <li> <span>2</span> <p><code>2007-2-10</code><a href= "#" >鼠标滑过列表文字显</a></p> <div> <a href= "#" ><img src= "images/imgs.jpg" title= "图片" /></a> <a href= "#" >鼠标滑过列表文字显示图片及详细信息信息信息</a> <em>日增:666</em> </div> </li> <li> <span>3</span> <p><code>2007-2-10</code><a href= "#" >鼠标滑过列表文字显</a></p> <div> <a href= "#" ><img src= "images/imgs.jpg" title= "图片" /></a> <a href= "#" >鼠标滑过列表文字显示图片及详细信息信息信息</a> <em>日增:666</em> </div> </li> </ul> </div> |
2.css
ul,p{ margin:0; padding:0;} .topcn{width:300px;line-height:27px;font-size:12px;} .topcn a{font-size:12px;} .topcn li{border-bottom:#000 1px dotted;display:inline-block;clear:both;} .topcn span{ float :left;width:17px;height:15px;line-height:15px;text-align:center;font-size:9px;font-family: Verdana, Geneva, sans-serif;margin:5px 5px 0 0;background-color:#99C;} .topcn p,.topcn div { float :left;width:278px;} .topcn p code { float :right;color:#9f9fa1;} .topcn img {width:67px;height:50px;border:#000 1px solid; float :left;margin:3px 10px 0 0;display:inline; background-color: #CCF;} .topcn em {display:block;color:#919b9d;} .topcn div{line-height:19px; padding-bottom:5px; display:none;} |
3.js
function ranklist(id,ele,elename,elechild,start_ele,cur_ele){ var obj_id=document.getElementById(id); var obj_ele=$tag(obj_id,ele); for (i=0;i<obj_ele.length;i++){ if (obj_ele[i].className.indexOf(elename) == -1) continue ; var objlist=$tag(obj_ele[i],elechild); for (j=0;j<objlist.length;j++){ objlist[j].onmouseover=function(){ var paris= this .parentNode; var list=$tag(paris,elechild); for (x=0;x<list.length;x++){ var thisdiv=$tag(list[x],cur_ele)[0]; var thisp=$tag(list[x],start_ele)[0]; thisdiv.style.display= "none" ; thisp.style.display= "block" ; } var start=$tag( this ,start_ele)[0]; start.style.display= 'none' ; var cur=$tag( this ,cur_ele)[0]; cur.style.display= 'block' ; } } } } function $tag(id,tag){ return id.getElementsByTagName(tag);} setTimeout( "ranklist('ranklist','ul','topcn','li','p','div')" ,0); /*参数解释: ranklist:为了缩小函数在文档中搜寻对象的范围,给其设置了一个id参数; ul:在搜寻范围内遍历ul元素列表;这是ele参数,为了排除与效果无关的ul元素;给其添加了类topcn,这是elename参数; 在指定的ul中遍历li列表元素;鼠标经过li元素会有相应的事件产生; p:为文字列表行; div:是显示的详细信息区域; */ |
效果展示
- 1
鼠标滑过列表文字显示图片及详细信息信息信息 日增:666
- 2
2007-2-10
鼠标滑过列表文字显鼠标滑过列表文字显示图片及详细信息信息信息 日增:666
- 3
2007-2-10
鼠标滑过列表文字显鼠标滑过列表文字显示图片及详细信息信息信息 日增:666
- 1
鼠标滑过列表文字显示图片及详细信息信息信息 日增:666
- 2
2007-2-10
鼠标滑过列表文字显鼠标滑过列表文字显示图片及详细信息信息信息 日增:666
- 3
2007-2-10
鼠标滑过列表文字显鼠标滑过列表文字显示图片及详细信息信息信息 日增:666
标签:
javascript
, (x)html+css
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?