当前位置: 首页 > 图文教程 > 网页制作 > 心得技巧 > 探讨支付宝导航条制作的实现方法

心得技巧
网页设计师学习网页设计的经验和技巧小结
10个优秀的 Web UI库/框架
40个CSS/JS风格和功能技术处理
最佳网页宽度及其兼容实现方法
让你了解HTML及资源是如何加载的
flex程序Firefox下中文输入乱码的bug
网页制作常用英文字体
在iframe框架中打开页面的方法
企业网站与栏目字典 中英文对照 做中英双语企业网站的朋友需要
前端开发大众手册(包括工具、网址、经验等)
iframe在IE6下出现横向滚动条的解决方案
IE6中奇数宽高的BUG
IE6中PNG Alpha透明(全集)
交互设计理论:良好的交互设计的三要素
互联网产品设计:启发式评估
B2C网站用户体验设计:Checkout(结帐流程)设计
40个2010年网页设计趋势单页布局实例
讨论基于B/S架构开发项目的原型工具
用户体验设计:UED设计流程和方法
网页设计参考:23个出色的蓝色系网站设计

心得技巧 中的 探讨支付宝导航条制作的实现方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-03-20   浏览: 143 ::
收藏到网摘: n/a

介绍支付宝导航条的制作过程,这类TAB很普遍,许多网站都会使用,用的这类导航条,本文算不上什么深奥的技术,只是探讨下这种导航效果的实现过程。

其实也算不上教程,也就是自己没事儿的时候做点东西然后发上来大家交流交流,希望大家不吝赐教^!^

因为刚看过亚东的教程和这个有点相似,所以就自己琢磨了一下写了一个仅用到一小段的JS就搞定了。亚东的里面要用到JQuery。我感觉要是简单一点的东西直接上JS就行了,有大量需求时再调用库才好。

核心HTML代码如下:

 

<div id="menu">
        <div id="top"><!–橙色菜单项部分:此标签作用在于滑动门效果的实现—>
            <ul id="item"><!–列表项li可自由添加与修改 –>
    <li id="item1"><a href="#"><span>前端开发</span></a></li>
    <li id="item2" class="active"><a href="#"><span>我要付款</span></a></li>
    <li id="item3"><a href="#"><span>网站开发</span></a></li>
    <li id="item4"><a href="#"><span>交易管理</span></a></li>
    <li id="item5"><a href="#"><span>我的支付宝</span></a></li>
    <li id="item6"><a href="#"><span>安全中心</span></a></li>
    <li id="item7"><a href="#"><span>商家服务</span></a></li>
    <li class="ext1"></li><!–额外的标签用于定位菜单项右上圆角 –>
            </ul>
        </div>
        <div id="bot"><!–灰色子菜单项部分:此标签作用也在于滑动门效果的实现–>
            <ul class="sub-item" id="sub-item1">
    <li><a href="#"><span>HTML</span></a></li>
    <li><a href="#"><span>CSS</span></a></li>
    <li><a href="#"><span>JavaScript</span></a></li>
    <li><a href="#"><span>ActionScript</span></a></li>
    <li><a href="#"><span>Photoshop</span></a></li>
    <li><a href="#"><span>Fireworks</span></a></li>
    <li><a href="#"><span>Flash</span></a></li>
    <li class="ext2"></li><!–额外的标签用于定位菜单项右下圆角 –>
            </ul>
         </div>   
    </div>

 

注意:

  1. 菜单项是可以自由扩展的,前提是复制代码中类名为“sub-item”红色列表标签。也就是copy这个ul标签的所有内容粘贴其后就行。
  2. 类名为“sub-item”列表标签ul的id属性依次类加就OK了,如:sub-item1,sub-item2,sub-item3…
  3. 类名为“active”的蓝色列表标签表示载入时的默认菜单项。

核心JavaScript代码:

主要功能是:子菜单项随着菜单项变化而变化的效果(类似tab选项卡)。

 

window.onload = function() {
        for( i=1; i<8; i++ ){
            var nodeItem = document.getElementById("item"+i);    //遍历每个菜单项增加 onClick事件
            nodeItem.onclick = function() {
                /*菜单激活动态样式*/
                for( n=0; n<6; n++){
                    document.getElementsByTagName("li")[n].className = "";
                    //alert(this.className);
                }
                this.className = "active";
                var linkNode = parseInt( this.id.substring(4,5) );   
                for ( j=1; j<10; j++){        //按顺序匹配菜单项和菜单内容
                    var nodeSubItem = document.getElementById("sub-item"+j);
                    if ( linkNode == j ){    //如果菜单项和菜单内容匹配则显示,否则隐藏
                        nodeSubItem.style.display = "block";
                    }else{
                        nodeSubItem.style.display = "none";
                    }
                }
            }
        }
    }

 

JS代码就不多做解释了,重要部分我已经给出注释。因为我也是菜鸟,费了很大劲才实现效果,还希望高手多多指点。

CSS代码有点小多我就不贴出来了,其实核心代码就那几句,主要为了仿制得完美就得多写一点啦!有兴趣的同学直接下载我的源码研究。有什么问题直接给我留言^!^