最近验收了ITOO,老师当时验收的时候对于界面的设计非常敏感,只要看了一个大体轮廓,就能给出我们建议,这是二十年积累的经验,我们要做的就是站在巨人的肩膀上,让我们成长更快!

老师说了一下关于界面设计的几个设计理念:

1)如无必要,勿增实体--奥卡姆剃刀原理

2)不是用户需要什么,我们做什么,而是用户需要什么,我们有什么

3)不要一下子给用户显示过多的信息

这个第三点,是我今天重点想说的一点。一下子给用户呈现大量的信息,只会让人看了反感,又怎么会有兴趣继续去用你的软件呢?我们有一种解决方案是放到更多里,但更多的形式我们也可以仿照淘宝显示品牌一样,刚开始只显示几个品牌,点击更多就会出现全部品牌。

下面是演示效果:

1)点击搜索后出现某些品牌

2)点击更多出现所有的品牌

下面是我自己做了一个小例子,来实现这个功能,我认为ITOO中关于信息的显示也可以采用这种方式,我们开始刚开始只显示必要的信息,当用户需要知道更多时,可以直接点击更多查看详细信息。

HTML结构:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<head>
<title>单击显示更多内容</title>
<link type="text/css" rel="stylesheet" href="cate.css" />
<script type="text/javascript" src="js/jquery-1.3.1.js"></script>
<script type="text/javascript" src="js/cate.js"></script>
</head>
<div class="SubCategoryBox">
<ul>
<li><a href ="#">华为</a></li>
<li><a href ="#">小米</a></li>
<li><a href ="#">苹果</a></li>
<li><a href ="#">魅族</a></li>
<li><a href ="#">三星</a></li>
<li><a href ="#">乐视</a></li>
<li><a href ="#">OPPO</a></li>
<li><a href ="#">vivo</a></li>
<li><a href ="#">纽曼</a></li>
<li><a href ="#">中兴</a></li>
<li><a href ="#">酷派</a></li>
<li><a href ="#">海尔</a></li>
<li><a href ="#">其他品牌</a></li>
</ul>
<div class="showmore">
<!--<a href ="more.html"><span>显示全部品牌</span></a>-->
<a><span>显示全部品牌</span></a>
</div>
</div>
</html>

CSS样式:

ul,li{
/* 清除ul,li的小圆点 */
list-style:none;
} a{
/* 取消所有的下划线 */
text-decoration:none;
padding-left:20px;
display:block;
display:inline-block;
width:100px;
padding-top:3px;
padding-bottom:3px;
}
body{
font-size:16px;
text-align:center;
}
*{
margin:0;
padding:0;
}
.SubCategoryBox{
width:600px;
margin:0 auto;
text-align:center;
margin-top:40px;
}
.SubCategoryBox 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 5px;
}
.promoted a{
color:#F50;
}

JS方法:

$(function(){
var $category =$('ul li:gt(5):not(:last)');//获取索引值大于5的品牌集合对象(去掉最后一个)
$category.hide(); //隐藏获得的JQuery对象
var $toggleBtn = $('div.showmore >a'); //获取全部品牌的按钮
$toggleBtn.click(function(){
if($category.is(":visible")){ //如果元素显示,则执行对应的代码
$category.hide(); //隐藏$category
$('.showmore a span')
.css("background","url(img/down.gif) no-repeat 0 5px")
.text("更多"); //改变背景图片和文字
$('ul li').removeClass("promoted"); //去掉高亮样式
}else{
$category.show();
$('.showmore a span')
.css("background","url(img/up.gif) no-repeat 0 5px")
.text("精简"); //改变背景图片和文本内容
$('ul li').filter(":contains('华为'),:contains('苹果'),:contains('魅族')")
.addClass("promoted"); //添加高亮样式
} return false; //超链接不可跳转
})
})

运行效果:

总结:

在这个小例子中,我对JQuery的书写有了更深刻的理解,从我写的注释中就看到了相对于之前有了很深刻的理解,从刚开始接触ITOO的一点都不会写,到现在一步步的成长,在项目中真的成长很快,接下来的一个版本我们还会有更多的收获。

JQuery实现品牌展示的更多相关文章

  1. jQuery图片旋转展示收缩效果

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. jQuery手风琴广告展示插件

    效果说明:当鼠标移动到已折叠广告的标题后,折叠当前已展开的广告,并同步展开相应的折叠广告.这种Accordion效果,看似简单,但因为存在动画同步的问题,不能简单地用两个animate()来实现.必须 ...

  3. jquery实现同时展示多个tab标签+左右箭头实现来回滚动(美化版增加删除按钮)

    闲聊 前段时间小颖分享了:jquery实现同时展示多个tab标签+左右箭头实现来回滚动文章,引入项目后,我们的组长说样子太丑了,小颖觉得还好啊,要不大家评评理,看下丑不丑?无图无真相,来上图: 看吧其 ...

  4. jquery实现同时展示多个tab标签+左右箭头实现来回滚动

    内容: jquery实现同时展示多张图片+定时向左单张滚动+前后箭头插件 jquery实现同时展示多个tab标签+左右箭头实现来回滚动 小颖最近的项目要实现类似如下效果: 蓝色框圈起来的分别是向上翻. ...

  5. 项目一:项目第二天 Jquery ztree使用展示菜单数据 2、 基础设置需求分析 3、 搭建项目框架环境--ssh(复习) 4、 SpringData-JPA持久层入门案例(重点) 5、 Easyui menubutton菜单按钮使用 6、 Easyui messager消息框使用

    1. Jquery ztree使用展示菜单数据 2. 基础设置需求分析 3. 搭建项目框架环境--ssh(复习) 4. SpringData-JPA持久层入门案例(重点) 5. Easyui menu ...

  6. [iOS基础控件 - 6.4] 汽车品牌展示 Model嵌套/KVC/TableView索引

    A.需求 1.使用汽车品牌名称头字母为一个Model,汽车品牌为一个Model,头字母Model嵌套品牌Model 2.使用KVC进行Model封装赋值 3.展示头字母标题 4.展示索引(使用KVC代 ...

  7. jQuery图片组展示插件----Galleria使用简介

    1.技术目标 掌握Galleria插件的基本操作 2.Galleria简介 Galleria是一个jQuery插件,可用于展示多张图片,操作也比较简单, 展示效果也非常不错,如图: 提示:Galler ...

  8. 如何用Jquery做图片展示效果

    一. 前言 到底用JQuery做出怎样的展示效果? 让我们先来看一下!网页加载时,如图所示: 二.本人思路 这个效果初学者看起来好像有点复杂,其实不太难,关键是理清思路,从后端的数据库中找出我们要展示 ...

  9. jquery之遍历展示title

    //遍历展示title {field:'couponsList',title:'优惠劵类型',width:250,align:'center',sortable:true, formatter:fun ...

随机推荐

  1. 【嵌入式硬件Esp32】MQTT链接测试工具

    1.Eclipse Paho MQTT Utility GUI测试工具 下载地址: 链接:https://pan.baidu.com/s/1ivxk3DWJkod-jBsowlcoBA 提取码:0lp ...

  2. Apache新的URL路由重写规则

    在根目录下新建一个 .htaccess 后缀文件,将下面代码放进去即可 <IfModule mod_rewrite.c> Options +FollowSymlinks -Multivie ...

  3. Python 推导式详解

    各种推导式详解 推导式的套路 之前我们已经学习了最简单的列表推导式和生成器表达式.但是除此之外,其实还有字典推导式.集合推导式等等. 下面是一个以列表推导式为例的推导式详细格式,同样适用于其他推导式. ...

  4. 【Linux文件目录】的一点小结

    1. 相关指令:      chgrp:改变文件所属用户组 点击(此处)折叠或打开 chgrp [-R] group dirname/filename -R: 基本-r参数都是递归recursive ...

  5. Python规范:用用assert

    什么是assert assert的语法: assert_stmt ::= "assert" expression ["," expression] 例: ass ...

  6. CCS中的linked resource

    一.关于CCS中的linked resource linkded resources 是eclipse中的一个功能,可以将存放在项目所在位置以外某个路径的文件或者文件夹链接至工程项目中.这个功能最大的 ...

  7. 协议——IIC

    I²C即Inter-Integrated Circuit(集成电路总线),它是一种串行通信总线,使用多主从架构,由飞利浦公司在1980年代设计出来的一种简单.双向.二线制总线标准.多用于主机和从机在数 ...

  8. 【C#】上机实验六

    . 定义Car类,练习Lambda表达式拍序 ()Car类中包含两个字段:name和price: ()Car类中包含相应的属性.构造函数及ToString方法: ()在Main方法中定义Car数组,并 ...

  9. pip下载加速的方式

    两种方式 一.临时方式 可以在使用pip的时候加参数-i https://pypi.tuna.tsinghua.edu.cn/simple. 例如下载或者更新: 下载:pip install -i h ...

  10. vue3 template refs dom的引用、组件的引用、获取子组件的值

    介绍 通过 ref() 还可以引用页面上的元素或组件. DOM 的引用 <template> <div> <h3 ref="h3Ref">Tem ...