欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS实现商品筛选功能

程序员文章站 2022-07-05 20:05:58
每天一个js 小demo之商品筛选。主要知识点:dom方法综合运用 效果图: 代码:

每天一个js 小demo之商品筛选。主要知识点:dom方法综合运用

效果图:

JS实现商品筛选功能

代码:

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>document</title>
<style type="text/css">
nav {
height: 50px;
}
nav span {
margin: 0 5px;
}
.show {
color: red;
}
</style>
</head>
<body>
<nav></nav>
<ul>
<li>
<strong>手机:</strong>
<a href="javascript:;">锤子t1</a>
<a href="javascript:;">锤子t2</a>
<a href="javascript:;">坚果u1</a>
<a href="javascript:;">锤子m1</a>
<a href="javascript:;">坚果pro</a>
</li>
<li>
<strong>价格:</strong>
<a href="javascript:;">3200</a>
<a href="javascript:;">2600</a>
<a href="javascript:;">899</a>
<a href="javascript:;">2799</a>
<a href="javascript:;">2299</a>
</li>
<li>
<strong>屏幕:</strong>
<a href="javascript:;">399</a>
<a href="javascript:;">600</a>
<a href="javascript:;">800</a>
<a href="javascript:;">1200</a>
</li>
</ul>
<script type="text/javascript">
(function(){
var nav = document.queryselector('nav');
var li = document.queryselectorall('li');
var ids = [];
for(var i = 0; i <li.length; i++){
setclick(li[i],i);
}
function setclick(parent,index){
var option = parent.getelementsbytagname("a");
for(var i = 0; i < option.length; i++){
/*
建一个数组
*/
option[i].onclick = function(){
for(var i = 0; i < option.length; i++){
option[i].classname = "";
}
this.classname = "show";
var span = ids[index];
if(ids[index]){
span.children[0].innerhtml = this.innerhtml;
return;
}
span = document.createelement("span");
var a = document.createelement("a");
var strong = document.createelement("strong");
a.innerhtml = "x";
a.href="javascript:;";
a.onclick = function(){
nav.removechild(span);
ids[index]="";
/*
删除元素清空数组对象位
*/
for(var i = 0; i < option.length; i++){
option[i].classname = "";
}
}
strong.innerhtml = this.innerhtml;
span.appendchild(strong);
span.appendchild(a);
ids[index] = span;
/*
元素生成之后,先存入数组的对应位
*/

/*
按照数组的顺序重新添加一遍元素
*/
for(var i = 0; i < ids.length; i++){
if(ids[i]){
nav.appendchild(ids[i]);
}
}
};
}
}
})(); 
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。