最新消息:

JQ应用第4款:jQuery制作淘宝商城商品列表多条件查询功能

JQuery应用 杨红伟 2447浏览 0评论

一、介绍

这几天做网站的时候,突然用到这个功能,找了好久也没有找到。看到”希伟素材网“有这么一个JS,效果很不错,也正是我一直以来想要的结果。附图如下:

二:使用教程

   

1、HTML代码:

<ul class="select">
	<li class="select-list">
		<dl id="select1">
			<dt>上装:</dt>
			<dd class="select-all selected"><a href="#">全部</a></dd>
			<dd><a href="#">针织衫</a></dd>
			<dd><a href="#">毛呢外套</a></dd>
			<dd><a href="#">T恤</a></dd>
			<dd><a href="#">羽绒服</a></dd>
			<dd><a href="#">棉衣</a></dd>
			<dd><a href="#">卫衣</a></dd>
			<dd><a href="#">风衣</a></dd>
		</dl>
	</li>
	<li class="select-list">
		<dl id="select2">
			<dt>裤装:</dt>
			<dd class="select-all selected"><a href="#">全部</a></dd>
			<dd><a href="#">牛仔裤</a></dd>
			<dd><a href="#">小脚/铅笔裤</a></dd>
			<dd><a href="#">休闲裤</a></dd>
			<dd><a href="#">打底裤</a></dd>
			<dd><a href="#">哈伦裤</a></dd>
		</dl>
	</li>
	<li class="select-list">
		<dl id="select3">
			<dt>裙装:</dt>
			<dd class="select-all selected"><a href="#">全部</a></dd>
			<dd><a href="#">连衣裙</a></dd>
			<dd><a href="#">半身裙</a></dd>
			<dd><a href="#">长袖连衣裙</a></dd>
			<dd><a href="#">中长款连衣裙</a></dd>
		</dl>
	</li>
	<li class="select-result">
		<dl>
			<dt>已选条件:</dt>
			<dd class="select-no">暂时没有选择过滤条件</dd>
		</dl>
	</li>
</ul>

2、JS代码:

<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
	$(document).ready(function(){
		
		$("#select1 dd").click(function () {
			$(this).addClass("selected").siblings().removeClass("selected");
			if ($(this).hasClass("select-all")) {
				$("#selectA").remove();
				} else {
				var copyThisA = $(this).clone();
				if ($("#selectA").length > 0) {
					$("#selectA a").html($(this).text());
					} else {
					$(".select-result dl").append(copyThisA.attr("id", "selectA"));
				}
			}
		});
		
		$("#select2 dd").click(function () {
			$(this).addClass("selected").siblings().removeClass("selected");
			if ($(this).hasClass("select-all")) {
				$("#selectB").remove();
				} else {
				var copyThisB = $(this).clone();
				if ($("#selectB").length > 0) {
					$("#selectB a").html($(this).text());
					} else {
					$(".select-result dl").append(copyThisB.attr("id", "selectB"));
				}
			}
		});
		
		$("#select3 dd").click(function () {
			$(this).addClass("selected").siblings().removeClass("selected");
			if ($(this).hasClass("select-all")) {
				$("#selectC").remove();
				} else {
				var copyThisC = $(this).clone();
				if ($("#selectC").length > 0) {
					$("#selectC a").html($(this).text());
					} else {
					$(".select-result dl").append(copyThisC.attr("id", "selectC"));
				}
			}
		});
		
		$("#selectA").live("click", function () {
			$(this).remove();
			$("#select1 .select-all").addClass("selected").siblings().removeClass("selected");
		});
		
		$("#selectB").live("click", function () {
			$(this).remove();
			$("#select2 .select-all").addClass("selected").siblings().removeClass("selected");
		});
		
		$("#selectC").live("click", function () {
			$(this).remove();
			$("#select3 .select-all").addClass("selected").siblings().removeClass("selected");
		});
		
		$(".select dd").live("click", function () {
			if ($(".select-result dd").length > 1) {
				$(".select-no").hide();
				} else {
				$(".select-no").show();
			}
		});
		
	});
</script>

3、CSS代码如下:

/* select */
.select{padding:5px 10px;border:#ddd 0px solid;border-radius:4px;width:60%;margin:5% auto;font-size:12px}
.select li{list-style:none;padding:10px 0 5px 100px}
.select .select-list{border-bottom:#eee 1px dashed}
.select dl{zoom:1;position:relative;line-height:24px;}
.select dl:after{content:" ";display:block;clear:both;height:0;overflow:hidden}
.select dt{width:100px;margin-bottom:5px;position:absolute;top:0;left:-100px;text-align:right;color:#666;height:24px;line-height:24px}
.select dd{float:left;display:inline;margin:0 0 5px 5px;}
.select a{display:inline-block;white-space:nowrap;height:24px;padding:0 10px;text-decoration:none;color:#039;border-radius:2px;}
.select a:hover{color:#f60;background-color:#f3edc2}
.select .selected a{color:#fff;background-color:#f60}
.select-result dt{font-weight:bold}
.select-no{color:#999}
.select .select-result a{padding-right:20px;background:#f60 url("close.gif") right 9px no-repeat}
.select .select-result a:hover{background-position:right -15px}

这里需要用到一张图片,因为是一张白色的叉号图 close.gif ,建议下载使用。

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址