`
chennanfei
  • 浏览: 41673 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

手机Web版浏览产品分类

 
阅读更多
var categoryConfig = {
    'abc': {
        name: '图书',
        children: {
            'bcd': {
                name: '中文图书',
                children: {
                    'cde': {
                        name: '文学',
                        children: {
                            'def': {name: '小说'},
                            'dfg': {name: '传记'}
                        }
                    },
                    'cef': {name: '管理'},
                    'cfg': {name: '人文社科'}
                }
            },
            'bde': {
                name: '教材教辅考试',
                children: {
                    'cgh': {name: '考试'},
                    'chi': {name: '外语'}
                }
            },
            'bef': {
                name: '进口图书',
                children: {
                    'cij': {name: '外国文学'},
                    'cjk': {name: '世界名著'}
                }
            }
        }
    },
    'acd': {
        name: '影视、音乐',
        children: {
            'bfg': {
                name: '影视',
                children: {
                    'ckl': {name: '电影'},
                    'clm': {name: '电视剧'},
                }
            },
            'bgh': {
                name: '音乐',
                children: {
                    'cmn': {name: '内地流行'},
                    'cno': {name: '港台流行'}
                }
            },
            'bhi': {
                name: '教育音像',
                children: {
                    'cop': {name: '儿童教育'},
                    'cpr': {name: '英语学习'}
                }
            }
        }
    },
    'ade': {
        name: '手机数码、家用电器',
        children: {
            'bij': {
                name: '摄影摄像'
            },
        },
    },
    'aef': {
        name: '电脑、游戏、软件、办公',
        children: {
            'bjk': {
                name: '苹果电脑'
            }
        }
    },
    'afg': {
        name: '家具、厨具'
    },
    'agh': {
        name: '食品、美妆、个人健康'
    },
    'ahi': {
        name: '玩具母婴'
    },
    'aij': {
        name: '运动、户外和休闲'
    },
    'ajk': {
        name: '钟表首饰'
    },
    'akl': {
        name: '汽车用品'
    }
}; // categoryConfig

var CTG = (function() {
    var _config = {'name': '分类', 'children': categoryConfig};
    var _trackStack = [];
    
    function findCategory(cid) {
        if (! cid) {
            return null;
        } else if (cid == 'root') {
            return _config;
        }
        
        var iter = null;
        for (var i = 0; i < _trackStack.length; i++) {
            var id = _trackStack[i];
            iter = iter == null
                ? _config
                : (iter.children ? iter.children[id] : null);

            if (id == cid) {
                return iter;
            }
        }
        return iter && iter.children ? iter.children[cid] : null;
    }
    
    function getCurrentCategoryId() {
        if (_trackStack.length > 0) {
            return  _trackStack[_trackStack.length - 1];
        }
        return null;
    }
    
    function getCurrentCategory() {
        var cur = null;
        for (var i = 0; i < _trackStack.length; i++) {
            var id = _trackStack[i];
            cur = cur == null
                ? _config
                : (cur.children ? cur.children[id] : null);
        }

        return cur;
    }
    
    function getChildren(id) {
        var cat = findCategory(id);
        return cat != null
            ? getChildNodes(cat.children)
            : null;
    }
    
    function getChildNodes(children) {
        if (! children) {
            return null;
        }

        var list = [];
        for (var id in children) {
            var node = children[id];
            list.push({'id': id, 'name': node.name});
        }
        return list;
    }
    
    function createPiece(id) {
        var children = getChildren(id);
        if (children === null) {
            return null;
        }
        
        var piece = $("<div class='categories hidden'></div>");
        piece.attr('id', id + 'Categories');
        
        for (var i = 0; i < children.length; i++) {
            var child = children[i];
            var ct = $("<div class='category'></div>");
            var link = $("<a></a>");
            var title = $("<div class='category-name'></div>");

            title.text(child.name);
            link.attr('data-id', child.id);
            link.attr('href', "javascript:CTG.show('" + child.id + "');");
            /*
            link.click(function(){
                var dataId = $(this).attr('data-id');
                show(dataId);
            });
            */
            
            link.append(title);
            ct.append(link);
            piece.append(ct);
        }
        
        $("#categoryList").append(piece);
        return piece;
    }
    
    function getPiece(id) {
        if (id == null) {
            return null;
        }
        var piece = $("#" + id + "Categories");
        return piece.length > 0 ? piece : createPiece(id);
    }
    
    function display(id, curId) {
        var piece = getPiece(id);
        if (piece == null || piece.length < 1) {
            /*
            var cat = findCategory(id);
            window.location.href = cat != null
                ? "http://www.amazon.cn/gp/aw/s?__mk_zh_CN=" + encodeURI('亚马逊网站')
                    + "&k=" + encodeURI(cat.name)
                : "http://www.amazon.cn/gp/aw";
            return false;
            */
            alert("Go to view products");
            return false;
        }

        if (curId) {
            $('#' + curId + 'Categories').slideUp();
        }

        var ctg = findCategory(id);
        if (ctg != null) {
            $("#curCategoryName").text(ctg.name);
        }
        
        piece.slideDown();
        return true;
    }
    
    return {
        'goBack': function() {
            var curId = _trackStack.pop();
            if (curId != null && curId != 'root') {
                var id = getCurrentCategoryId();
                if(display(id, curId)) {
                    var btn = $("#goBackBtn");
                    if (_trackStack.length > 1) {
                        var lastId = _trackStack[_trackStack.length - 2];
                        var cat = findCategory(lastId);
                        if (cat) {
                            btn.val(cat.name);
                            btn.show();
                        } else {
                            btn.hide();
                        }
                    } else {
                        btn.hide();
                    }
                }
            } else {
                alert('go to home page');
                // window.location.href = "http://www.amazon.cn/gp/aw";
            }
        },
        'show': function(id) {
            if (! id) {
                id = 'root';
            }
            var curId = getCurrentCategoryId();
            if (display(id, curId)) {
                var cur = findCategory(curId);
                var btn = $("#goBackBtn");
                if (cur) {
                    btn.val(cur.name);
                    btn.show();
                } else {
                    btn.hide();
                }
                _trackStack.push(id);
            }
        }
    }
})();

 

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Happy shopping</title>
    <link type="text/css" href="smart.css" rel="Stylesheet" media="screen" />
    <script type="text/javascript" src="jquery/jquery.min.js"></script>
    <script type="text/javascript" src="smart.js"></script>
    <script type="text/javascript" src="category.js"></script>
    <style>
        body{font-family: Candara; margin: 0; padding: 0; font-size: 12px;}
        a {text-decoration: none; color: #004B91;}
        input {font-size: 12px; padding: 2px;}
        ul {padding: 0;}
        li {list-style-type: none; float: left; margin: 0; margin-right: 10px;}
        .bd {border: 1px solid blue;}
        .content {min-height: 40px; margin: 0; padding: 5px;}
        .fl {float: left;}
        .fr {float: right;}
        .hidden {display: none;}
        .welcome {color: #FF9900; font-weight: bold; padding: 0 10px; float: left;}
        .wd1 {width: 90%;}

        .bar {
            background: -moz-linear-gradient(#FFC369, #FF9900) repeat scroll 0 0 #FFC369;
            border-radius: 6px 6px 0 0;
            width: 100%;
        }
        .bar-btns {margin: 5px; position: absolute;}
        .bar-title {
            color: #FFFFFF;
            font-size: 120%;
            font-weight: bold;
            padding: 10px 0;
            text-align: center;
        }

        .blue-bar {background: -moz-linear-gradient(#5995BF, #3C6FA1) repeat scroll 0 0 #5995BF;}

        .btn {
            background: -moz-linear-gradient(#F5DCA3, #E8AA19) repeat scroll 0 0 #F5DCA3;
            border: 1px solid #DA8118;
            border-radius: 8px;
            text-shadow: 0 -1px 1px #145072;
            color: #FFFFFF;
            cursor: pointer;
            padding: 3px 5px;
            text-align: center;
            vertical-align: middle;
        }

        .categoryContainer {box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); margin: 20px;}
        .categories {color: #2F3E46; font-weight: bold;}
        .category {
            background: -moz-linear-gradient(#FFFFFF, #F2F2F2) repeat scroll 0 0 #FFFFFF;
            border-top: 1px solid #CCCCCC;
        }
        .category-name {padding: 15px 20px;}
        .category a {color: #181D29;}
        .category:hover {background: #E6E6E6;}

        .footer {
            background: -moz-linear-gradient(#5995BF, #3C6FA1) repeat scroll 0 0 #5995BF;
            bottom: 0; 
            color: #FFFFFF;
            font-weight: bold;
            padding: 10px; 
            position:fixed; 
            width: 100%;
        }
        .footer ul {width: 100%; margin: 0;}
        .footer li {font-size: 140%; text-align: center; width: 22%;}
        .footer a {color: #FFFFFF;}

        .menu li {position: relative; float: left;}
        .menu li a {float: left;}
        .menu li:hover > ul {display: block;}
        .sub-menu {position: absolute; display: none; left: 0; top: 100%; margin: 0;}
        .sub-menu li {float: left;}
        .sub-menu li a {padding: 5px;}
        .top-menu {padding: 0; margin: 0 20px;}
        .top-menu li a {padding: 12px; background-color: #F68B32;}
        .top-sub-menu {background-color: #ECECEC; width: 110px;}
        .top-sub-menu li a {width: 90px;}
        .top-sub-menu li a:hover  {background-color: #0B5199; color: #FFFFFF;}

        .blue-bar-sub {display: inline-block; margin-top: 5px;}
        .price {color: #CC0000;}
        .status {color: #4CB749;}

        .search-box {
            background-color: #FAFAFA;
            border: 1px solid #1A1A65;
            border-radius: 8px; 
            font-size: 120%; 
            height: 20px;
            padding: 3px 5px;
            margin-top: 5px;
            width: 93%;
        }
    </style>
</head>
<body>
    <div class="content">
        <div class="fl"><img src="images/logo.png"/></div>
        <div class="fr">
            <ul class="menu">
                <li><span class="welcome">Hello, Eric!</span></li>
            </ul>
        </div>
    </div>
    <div class="content blue-bar"></div>
    
    <div id="categoryList" class="categoryContainer">
        <div class="bar">
            <div class="bar-btns"><input id="goBackBtn" class="btn" type="button" value="首页" onclick="CTG.goBack();"/></div>
            <div class="bar-title" id="curCategoryName">分类</div>
        </div>
    </div>
    
    <div class="footer">
        <ul>
            <li><a href="gateway.html">首页</a></li>
            <li><a href="category.html">分类</a></li>
            <li><a href="#">购物车</a></li>
            <li><a href="#">更多</a></li>
        </ul>
    </div>

<script type="text/javascript">
$(document).ready(function(){
    CTG.show();
});    
</script>
</body>
 
分享到:
评论

相关推荐

    phpweb仿京东三级分类插件

    在电商领域,商品分类通常分为多个级别,以更好地组织和展示产品。一级分类可以是大类别,如“电子产品”;二级分类可能是更具体的类型,如“手机”;三级分类则可能细化到具体品牌或型号,如“苹果iPhone”。这种...

    PHPWEB手机版V1.0(自动同步数据)

    **PHPWEB手机版V1.0** 是一个专为PHPWEB框架设计的移动端解决方案,首次将大部分PHPWEB核心模块适配到手机浏览环境。这个版本的主要目标是为用户提供一个流畅、便捷的移动浏览体验,使用户在手机上也能方便地访问和...

    手机端分类列表页面源码.zip

    手机端分类列表页面是移动应用或网站中常见的一种设计元素,用于展示各种内容类别,方便用户按需浏览和选择。本资源"手机端分类列表页面源码.zip"提供了一个简约而实用的手机端分类界面的源代码实现。下面将详细探讨...

    网博士phpweb产品三级分类.rar

    例如,一级分类可能是“电子产品”,二级分类可以是“手机”和“电脑”,而三级分类则细化为具体的型号或品牌。 3. **产品添加与分配**:在产品管理部分,你可以上传或输入产品的详细信息,如名称、价格、描述等。...

    手机web网站模板系列-3[内含30个模板]

    手机Web网站模板是用于构建移动设备友好型网页的预制设计框架,它们简化了移动网站的开发过程,使得非程序员也能快速搭建美观且功能完善的手机网站。在这个“手机Web网站模板系列-3”中,包含了30个不同风格和用途的...

    响应式web分类选项卡

    "响应式Web分类选项卡"是这种设计理念的一个具体应用,它允许用户在一个页面中方便地切换和浏览不同类别的内容。 在响应式Web分类选项卡的设计中,有以下几个关键知识点: 1. **媒体查询(Media Queries)**:媒体...

    最新蚂蚁5.6s版单多城市分类信息系统网站源码手机wap版 可运营版

    3. **手机WAP版**:考虑到移动设备的普及,系统还包含了手机版本,优化了界面和操作流程,使用户在手机上也能便捷地浏览和发布信息。 4. **PHP5.4支持**:该源码基于PHP5.4版本进行开发,确保了良好的兼容性和执行...

    仿淘宝的商城,包括手机版本和WEB版本

    这个项目是一个电子商务平台的复刻版,旨在模仿淘宝网的功能和用户体验,涵盖了移动设备(手机版本)和Web浏览器(WEB版本)两种访问方式。这样的设计确保了用户无论在何时何地都能方便地浏览商品、进行购物操作。 ...

    jQuery京东手机端商品分类滑动切换.zip

    京东作为国内知名的电商平台,其在移动web端的商品分类导航设计独具匠心,提供了一种流畅的滑动切换效果,大大提升了用户浏览和搜索商品的便捷性。本文将深入探讨如何利用jQuery技术来实现类似京东手机端商品分类的...

    正式商业旗舰版Modoer点评系统3.5(Modoer 3.5)新增手机WEB端加微信公众平台接口,商业模块

    4.比较重要的功能,Modoer的在线充值支付模块在手机web版中增加了支付宝的手机网站支付功能,这样,我们下面就可以 开发商城,团购等需要在线支付的功能。 5.对于支付宝手机网站支付功能,我们先坐上了手机在线充值...

    国内购物网站手机版模版

    【国内购物网站手机版模版】是一个专为手机端设计的网页模板,旨在为开发者和设计师提供构建移动购物平台的参考。这个模版包含了多种页面结构和设计元素,可以帮助快速搭建功能齐全、用户体验良好的在线购物应用。 ...

    ASP源码—牡丹江分类信息源码(PC+手机 二合一 ) php版.zip

    此“牡丹江分类信息源码”基于ASP技术,意味着它使用了VBScript或其他兼容的脚本语言编写,以实现网站功能,如发布和浏览分类信息。ASP的特性使得此类源码易于理解和修改,适合初学者学习和开发小型Web应用程序。 ...

    基于WEB的网上购物系统的设计与实现(源码+视频+数据库+论文).rar

    基于WEB的网上购物系统主要功能包括:前台用户登录退出、注册、在线购物、修改个人信息、后台商品管理等等。本系统结构如下: (1)商品浏览模块: 实现浏览最新商品 实现按商品名称浏览商品 实现根据商品分类...

    JSP20网上手机销售系统

    同时,系统可能有智能推荐功能,根据用户的浏览历史和购买行为推送相关的手机产品。 购物车功能使得用户可以方便地保存想购买的手机,随时增删改选中的商品,并能在结账时一次性结算。购物车还会显示总价,帮助用户...

    ASP手机WAP版产品展示系统

    ASP手机WAP版产品展示系统是专为移动设备设计的一款基于WAP2.0标准的Web应用程序。WAP(Wireless Application Protocol)是一种允许无线设备访问互联网内容的技术,尤其是在功能较为简单的早期智能手机和平板电脑中...

    仿淘宝产品发布类别多级分类列表显示

    在电商平台上,商品往往被归类到不同的类别中,这些类别可能有层级关系,例如“电子产品 -&gt; 手机 -&gt; 智能手机 -&gt; Android手机”。这种层级结构允许用户逐步细化搜索范围,找到更符合自己需求的商品。 在前端实现...

    网软志成分类信息网站系统.net官方商业版

    分类信息网源码,带商家黄页的分类信息网系统,会员可自助建站的分类信息网站程序,可根据浏览IP自动跳转分站的分类网站后台管理系统,供求信息网站源码,asp.net分类信息源码,生成html的分类信息站源码,此系统是基于asp...

    虹桥信息网触屏版手机wap分类信息网站模板.zip

    随着移动互联网的飞速发展,手机用户对网页浏览的需求日益增强,而传统的网页设计已经无法满足这一需求。因此,触屏版自适应手机WAP网站模板应运而生,它能够根据用户的设备类型和屏幕尺寸自动调整布局,提供优质的...

    梦行分类信息系统演示(手机)

    ### 梦行分类信息系统演示(手机) #### 概述 梦行Monxin分类信息系统是一款专为移动设备设计的应用程序,旨在提供一个高效、便捷的平台来满足用户在日常生活中的分类信息发布与查找需求。该系统不仅支持信息的...

    生活分类信息发布网站的优秀网站管理系统正式版

    分类信息网源码,带商家黄页的分类信息网系统,会员可自助建站的分类信息网站程序,可根据浏览IP自动跳转分站的分类网站后台管理系统,供求信息网站源码,asp.net分类信息源码,生成html的分类信息站源码,此系统是基于asp...

Global site tag (gtag.js) - Google Analytics