博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Div Vertical Menu ver3
阅读量:4313 次
发布时间:2019-06-06

本文共 1968 字,大约阅读时间需要 6 分钟。

看这篇之前,首先看这篇最后的结果,你会发现html的代码会有很多重复的,也许以后的菜单随之增多,网页的大小也会随之增大,这也许不是问题,问题是图片更改或是样式有变更,涉及的div都要随之变更。

因此,Insus.NET再次重构它。让它在以后的维护更好管理。下面视频为重构过程:

文件格式:.wmv;大小11,750KB;长度:00:09:15。

下载地址:

 

样式code,添加了一个imgstyle,是为了简化hmtl的img前后空格( ),其没有改变,为了方便你拷贝与粘贴无需要两篇之后切换来回,Insus.NET也照搬过来: 

ExpandedBlockStart.gif
View Code
 .div_menu
        
{
            margin-top
:
 2px;
            margin-bottom
:
 2px;
            padding
:
 5px;
            padding-left
:
 20px;
            background-color
:
 #dcdcdc;
            height
:
 16px;
        
}
        .imgStyle
        
{
            margin-left
:
 5px;
            margin-right
:
 5px;
        
}

 

Javascript code中,删除函数(function) InsusOver(id)和InsusOut(id),并改写如下javascript 代码,这样可以简化html的内容,当菜单增多或减少时,只是修改javascript内的array元素,作相应的增多或减少。另外图片的src与align在每个菜单中也相同,因此也抽取放在javascript中实现。

ExpandedBlockStart.gif
View Code
 window.onload = 
function () {
            
var divs = 
new Array("div1", "div2", "div3", "div4", "div5");
            
for (
var o 
in divs) {
                
var divTag = document.getElementById(divs[o]);
                divTag.className = "div_menu";
                divTag.onmousemove = 
function () {
                    
this.style.backgroundColor = "#faf0e6";
                };
                divTag.onmouseout = 
function () {
                    
this.style.backgroundColor = "#dcdcdc";
                };
            };
            
var pics = 
new Array("img1", "img2", "img3", "img4", "img5");
            
for (
var o 
in pics) {
                
var pic = document.getElementById(pics[o]);
                pic.src = '<%= ResolveUrl("~/link.gif")%>';
                pic.align = "absmiddle";
                pic.className = "imgStyle";
            };
        };

 

 接下来,是简化后的html代码:

ExpandedBlockStart.gif
View Code
 
<
div 
style
="background-color: #FFFFFF; height: 3px;"
>
    
</
div
>
    
<
div 
id
="div1"
>
        
<
img 
id
="img1"
 
/>
        
<
href
='<%= 
ResolveUrl("~/Default1.aspx") %
>'>Hyperlink1
</
a
>
    
</
div
>
    
<
div 
id
="div2"
>
        
<
img 
id
="img2"
 
/>
        
<
href
='<%= 
ResolveUrl("~/Default2.aspx") %
>'>Hyperlink2
</
a
>
    
</
div
>
    
<
div 
id
="div3"
>
        
<
img 
id
="img3"
 
/><
href
='<%= 
ResolveUrl("~/Default3.aspx") %
>'>Hyperlink3
</
a
>
    
</
div
>
    
<
div 
id
="div4"
>
        
<
img 
id
="img4"
 
/>
        
<
href
='<%= 
ResolveUrl("~/Default4.aspx") %
>'>Hyperlink4
</
a
>
    
</
div
>
    
<
div 
id
="div5"
>
        
<
img 
id
="img5"
 
/><
href
='<%= 
ResolveUrl("~/Default5.aspx") %
>'>Hyperlink5
</
a
>
    
</
div
>

 

转载于:https://www.cnblogs.com/insus/archive/2011/10/19/2217314.html

你可能感兴趣的文章
Linux下获取本机IP地址的代码
查看>>
(C#)调用Webservice,提示远程服务器返回错误(500)内部服务器错误
查看>>
flex布局
查看>>
python-----python的文件操作
查看>>
java Graphics2d消除锯齿,使字体平滑显示
查看>>
控件中添加的成员变量value和control的区别
查看>>
Spring Boot Docker 实战
查看>>
Div Vertical Menu ver3
查看>>
Git简明操作
查看>>
InnoDB为什么要使用auto_Increment
查看>>
课堂练习之买书打折最便宜
查看>>
定义函数
查看>>
网络虚拟化技术(二): TUN/TAP MACVLAN MACVTAP
查看>>
MQTT协议笔记之mqtt.io项目HTTP协议支持
查看>>
(转)jQuery中append(),prepend()与after(),before()的区别
查看>>
Tecplot: Legend和图像中 Dashed/Dash dot/Long dash 等虚线显示没有区别的问题
查看>>
蜕变成蝶~Linux设备驱动之异步通知和异步I/O
查看>>
jquery简单开始
查看>>
作业2
查看>>
ios上架报错90080,90087,90209,90125 解决办法
查看>>