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

本文共 1902 字,大约阅读时间需要 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
>

 

转载地址:http://bxkml.baihongyu.com/

你可能感兴趣的文章
虚函数可不可以是内联函数
查看>>
据说看完这21个故事的人,30岁前都成了亿万富翁
查看>>
HDOJ-4505 小Q系列故事——电梯里的爱情
查看>>
【转】Navigation Drawer(导航抽屉)
查看>>
Linux Shell常用技巧(十)
查看>>
【从零之三(更)】自定义类中调用讯飞语音包错误解决办法
查看>>
【源代码】LinkedHashMap源代码剖析
查看>>
Android InputStream转Bitmap
查看>>
记录水电系统开发的心理【1】
查看>>
【Html5】-- 塔台管制
查看>>
我为什么要学习C++反汇编
查看>>
PHP 清空varnish 缓存 包括指定站点下的
查看>>
谷歌用户Siri当心!谷歌正从苹果业务中分走一杯羹
查看>>
Oracl数据库管理方面的资料(查询sga,查看oracle数据库名称sid,查看oracle数据库名称,查看表空间,修改表空间名称)...
查看>>
使用包和测试
查看>>
react-router了解一下
查看>>
关于 TCP/IP,必知必会的十个问题
查看>>
Unity 编译 Android 的原理解析和 apk 打包分析
查看>>
WiFi万能钥匙蹭网原理详细剖析
查看>>
浅谈JavaScript中的继承
查看>>