zoukankan      html  css  js  c++  java
  • 淘宝分类常见---部分显示和全部显示的js效果

    需求就是,点击“更多按钮”,显示全部的分类详情,再次点击,显示部分分类。

    展开:

    收起:

    结构:

    <div class="SubBox" id="SubBox">
    <ul>
    <li ><a href="#">佳能</a><i>(30440) </i></li>
    <li ><a href="#">索尼</a><i>(27220) </i></li>
    <li ><a href="#">三星</a><i>(20808) </i></li>
    <li ><a href="#">尼康</a><i>(17821) </i></li>
    <li ><a href="#">松下</a><i>(12289) </i></li>
    <li ><a href="#">卡西欧</a><i>(8242) </i></li>
    <li ><a href="#">富士</a><i>(14894) </i></li>
    <li ><a href="#">柯达</a><i>(9520) </i></li>
    <li ><a href="#">宾得</a><i>(2195) </i></li>
    <li ><a href="#">理光</a><i>(4114) </i></li>
    <li ><a href="#">奥林巴斯</a><i>(12205) </i></li>
    <li ><a href="#">明基</a><i>(1466) </i></li>
    <li ><a href="#">爱国者</a><i>(3091) </i></li>
    <li ><a href="#">其它品牌相机</a><i>(7275) </i></li>
    </ul>
    <div class="showmore" id="ShowMore"><a href="javascript:;"><span>显示全部品牌</span></a></div></div>

    样式:

    *{ margin:0; padding:0;}
    body {font-size:12px;text-align:center;}
    a { color:#04D; text-decoration:none;}
    a:hover { color:#F50; text-decoration:underline;}
    .SubBox {width:600px; margin:0 auto; text-align:center;margin-top:40px;}
    .SubBox ul { list-style:none;}
    .SubBox ul li { display:block; float:left; width:200px; line-height:20px;}
    .showmore { clear:both; text-align:center;padding-top:10px;}
    .showmore a { display:block; width:120px; margin:0 auto; line-height:24px; border:1px solid #AAA;}
    .showmore a span { padding-left:15px; background:url(../img/down.gif) no-repeat 0 0;}
    .promoted a { color:#F50;}

    js代码:

    <script>
     $(function(){
         var $SubBox=$('#SubBox li:gt(5):not(:last)');
         var $ShowMore=$('#ShowMore');
         $SubBox.hide();
         $ShowMore.click(function(){
             if($SubBox.is(':visible')){
                 $SubBox.hide();
                 $ShowMore.find('span')
                         .text("显示全部品牌")
                         //.css('background','url(../images/down.gif)');
             }
             else{
                 $SubBox.show();
                 $ShowMore.find('span')
                         .text("精简显示品牌")
                         //.css('background','url(../images/up.gif)');
             }
         })
     });
    </script>

     总结:这个例子中所使用的jquery

         1、 过滤选择器。li:gt(5):not(:last)   从第六个元素开始,除了最后一个元素的所有li元素。

        2、 显示隐藏 show();  hide();

        3、 css('name','value')给元素设置样式;

        4、find('子元素');   另外还有一个filter('对他本身的元素操作');   例如 找到的是自己本身的li,样式写在promoted a上面。

    $SubBox.filter(":contains('柯达'),:contains('爱国者'),:contains('佳能')").addClass('promoted');

         效果很简单,come on!

     

  • 相关阅读:
    配置iis支持.json格式的文件
    This function has none of Deterministic,no sql,or reads sql data in its declaration and binary logging is enabled(you *might* want to use the less safe log_bin_trust_function_creators variable
    IIS Asp.Net 访问 Com组件 报拒绝访问
    记一次 mysql 启动没反应
    linux 下安装 redis
    Jexus 安装asp.net mvc EF 项目引发的错误总
    在CentOS中安装arial字体
    Navigator 对象
    location 对象属性
    history对象
  • 原文地址:https://www.cnblogs.com/web-sheena/p/4206087.html
Copyright © 2011-2022 走看看