webapp制作简单筛选条、升序降序样式

这部分经常在列表的筛选显示时被见到

如下所示

html部分很简单

<div class="filter">
        <ul>
            <li class="current">
                <a href="javascript:;">默认</a>
            </li>
            <li class="">
                <a href="javascript:;">数量</a>
            </li>
            <li class="arrow">
                <a href="javascript:;">价格</a>
            </li>
            <li class="">
                <a href="javascript:;">时间</a>
            </li>
        </ul>
    </div>

然后使用css稍加美化,curent类用来表示当前选中样式状态,其中价格后面的箭头可以用伪类添加

.filter ul li{float: left;width: 25%;border-bottom: 1px solid #ddd;border-right: 1px solid #ddd;background-color: #fff;}
.filter ul li.current{border-bottom: 2px solid #D24D56;margin-top: -1px;}
.filter ul li a{display: inline-block;width: 100%;height: 100%;text-align: center;line-height: 40px;position: relative;}
.filter ul li.arrow a:after{
    position: absolute;
    top: 19px;
    right: 10px;
    content: ‘‘;
    width: 9px;
    height: 5px;
    background-image: url(img/arrow.png);
    -webkit-transition:All 0.8s ease-in-out;
}
.filter ul li.arrow a.current:after{
     -webkit-transform:rotate(180deg);
}

之后需要做的就是借助jquery来实现

首先考虑通过jquery改变选中li的样式改变

$(‘.filter ul li‘).click(function() {
            $(this).addClass(‘current‘).siblings().removeClass(‘current‘);
        });

然后实现“价格”部分的箭头旋转

这里通过给特殊类 arrow 中的a元素添加current类 或 去除current类来实现箭头的旋转

$(‘.filter ul li.arrow‘).toggle(function() {
            $(this).addClass(‘current‘);
            $(this).children(‘a‘).removeClass(‘current‘);
        }, function() {
            $(this).addClass(‘current‘);
            $(this).children(‘a‘).addClass(‘current‘);
        });

最终实现想要的效果!

如果你有其他实现方法也请给我留言!

good  good  study, day  day  up!

时间: 2024-10-07 19:35:13

webapp制作简单筛选条、升序降序样式的相关文章

算法导论--装备线调度(升序&amp;&amp;降序输出)

题意就先不用讲了吧,感觉自己还没有掌握核心的东西. //心得 //怎样保持路径,递归的实现 #include<iostream> #include<cstdio> #include<vector> #include<stack> #include<cstring> using namespace std; int a[100][100];//time for station int t[100][100];//time for from Li t

javascript实现表格升序降序排列

javascript实现表格升序降序排列的步骤如下: 1,生成表格,并给各列表头添加onclick的排序响应函数 2,取得表格各行的数据,并存入临时数组 3,对该临时数组进行排序 4,利用createDocumentFragment,appendChild方法把排序好的数组转换成表格输出,至此排序完毕. 详细代码如下: 经测试可以直接使用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht

angularJS可以实现常常看到购物车中的升序降序效果

{ "xinxi":[ {"id":100,"name":"baobo","age":12}, {"id":99,"name":"paopo","age":18}, {"id":50,"name":"xinxin","age":55}, {"

java一段数字 分割的升序降序 奇偶数分开排序

/** * 降序升序 * * @param str * @since 0.0.1 */ public void sort(String str){ String[] nums = str.split(" "); List<Integer> odd = new ArrayList<Integer>(); List<Integer> even = new ArrayList<Integer>(); for (String string : n

打印升序降序字母金字塔

/* 需求:打印字母金字塔 思路: 外部使用for循环控制行,里面嵌套3个for循环, 一个控制空格打印, 一个控制字母升序打印, 一个控制字母降序打印 样例: 输入:3 输出: A ABA ABCBA */ #include<stdio.h> int main() { int storey, space, i; char ch; printf("Please enter the number of rows to print: "); scanf("%d&quo

HTML中实现Table表头点击升序/降序排序

1 题目:如下图,请实现表格信息的排序功能,当点击表头的属性区域,将表格信息进行排序切换功能,即第一次点击为降序排序,再一次点击进行升序排序. 2 姓名 力量 敏捷 智力 3 德鲁伊王 17 24 13 4 月之骑士 15 22 16 5 众神之王 19 15 20 6 流浪剑客 23 15 14 7 基本思路: 8 点击将各列数值存入数组第一次点击?(className=="as"?)升序排序(className="desc")按新排列的数组的顺序,将各列赋予新值

lambda linq 表达式 ListBox 的升序 降序 乱序

2020年1月9日 17:50:55 附件 https://files.cnblogs.com/files/xe2011/ListBoxSort.rar 这种方法 如果内容足够多就能看到滚动条闪烁了,我觉得这是列表框清除内容,再添加内容引起的. 用不删除列表,重新赋值的方法能解释闪烁,但过程时间又太长. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; u

unity制作简单血条

学习Unity已经10天了,也没发现有什么长进,真的急.昨天仿着官方Demo做了个射击游戏轮廓,其中需要给每个怪做一个血条. 搜了一些,挺复杂的,用NGUI或者UGUI,外加很长的代码...不过还是找到了一篇简单的. 但是那一篇把所有的东西都放一起了,不太好,我在这整理分离一下. 背景: 官方Demo恶魔射手.其中每个怪都有一个EnemyHealth脚本,该脚本主要有怪物的血量等,然后有个TakeDamage()函数来计算伤害后的血量. 开始: 1.制作图片: PS一张细长的红色图片作为血量:

二位数组按某一个或多个字段值(升序/降序)排序

输出结果: