JS实现商品筛选功能


Posted in Javascript onAugust 19, 2020

每天一个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>

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

Javascript 相关文章推荐
JavaScript语句可以不以;结尾的烦恼
Mar 08 Javascript
jquery photoFrame 图片边框美化显示插件
Jun 28 Javascript
详谈 Jquery Ajax异步处理Json数据.
Sep 09 Javascript
jQuery旋转插件—rotate支持(ie/Firefox/SafariOpera/Chrome)
Jan 16 Javascript
JSON+JavaScript处理JSON的简单例子
Mar 20 Javascript
使用GruntJS构建Web程序之安装篇
Jun 04 Javascript
JS实现字符串转日期并比较大小实例分析
Dec 09 Javascript
Bootstrap3学习笔记(二)之排版
May 20 Javascript
javascript 开发之百度地图使用到的js函数整理
May 19 Javascript
Angular4学习笔记之准备和环境搭建项目
Aug 01 Javascript
如何基于JS截获动态代码
Dec 25 Javascript
JS对象属性的检测与获取操作实例分析
Mar 17 Javascript
node文件上传功能简易实现代码
Jun 16 #Javascript
详解webpack 多入口配置
Jun 16 #Javascript
requirejs + vue 项目搭建详解
Jun 16 #Javascript
jQuery 控制文本框自动缩小字体填充
Jun 16 #jQuery
jQuery序列化后的表单值转换成Json
Jun 16 #jQuery
详解探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用
Jun 16 #Javascript
基于AngularJS实现的工资计算器实例
Jun 16 #Javascript
You might like
PHP 导出数据到淘宝助手CSV的方法分享
2010/02/27 PHP
php上的memcache和memcached两个pecl库
2010/03/29 PHP
php 缩略图实现函数代码
2011/06/23 PHP
那些年一起学习的PHP(二)
2012/03/21 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
PHP PDOStatement::debugDumpParams讲解
2019/01/30 PHP
php操作redis数据库常见方法实例总结
2020/02/20 PHP
Js的MessageBox
2006/12/03 Javascript
JQuery之拖拽插件实现代码
2011/04/14 Javascript
jquery 获取自定义属性(attr和prop)的实现代码
2012/06/27 Javascript
Extjs中RowExpander控件的默认展开问题示例探讨
2014/01/24 Javascript
如何编写高质量JS代码(续)
2015/02/25 Javascript
JavaScript 数组中最大最小值
2016/06/05 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
javascript完美实现给定日期返回上月日期的方法
2017/06/15 Javascript
详解layui中的树形关于取值传值问题
2018/01/16 Javascript
JavaScript实现计算多边形质心的方法示例
2018/01/31 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
vue全局使用axios的操作
2020/09/08 Javascript
Python使用百度API上传文件到百度网盘代码分享
2014/11/08 Python
简单说明Python中的装饰器的用法
2015/04/24 Python
Python中的变量和作用域详解
2016/07/13 Python
Python打印输出数组中全部元素
2018/03/13 Python
Python QQBot库的QQ聊天机器人
2019/06/19 Python
Elasticsearch py客户端库安装及使用方法解析
2020/09/14 Python
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
网上快餐厅创业计划书
2014/02/01 职场文书
会务接待方案
2014/02/27 职场文书
单位委托书范本
2014/04/04 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
英语课外活动总结
2014/08/27 职场文书
听课评课活动心得体会
2016/01/15 职场文书
幼儿园2016年感恩节活动总结
2016/04/01 职场文书
SQLServer RANK() 排名函数的使用
2022/03/23 SQL Server