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 键盘事件的组合使用实现代码
May 04 Javascript
js实现拖拽效果
Feb 12 Javascript
jQuery模仿阿里云购买服务器选择购买时间长度的代码
Apr 29 Javascript
Angularjs 制作购物车功能实例代码
Sep 14 Javascript
javascript工厂模式和构造函数模式创建对象方法解析
Dec 30 Javascript
基于cookie实现zTree树刷新后展开状态不变
Feb 28 Javascript
微信小程序上传图片到服务器实例代码
Nov 07 Javascript
微信小程序wx:for和wx:for-item的用法详解
Apr 01 Javascript
Node.js EventEmmitter事件监听器用法实例分析
Jan 07 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
Dec 02 Javascript
微信小程序实现弹框效果
May 26 Javascript
vue-cli3访问public文件夹静态资源报错的解决方式
Sep 02 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 rsa加密解密使用方法
2015/04/27 PHP
PHP实现抓取迅雷VIP账号的方法
2015/07/30 PHP
php字符集转换
2017/01/23 PHP
php面向对象的用户登录身份验证
2017/06/08 PHP
php curl上传、下载、https登陆实现代码
2017/07/23 PHP
Thinkphp开发--集成极光推送
2017/09/15 PHP
php实现根据身份证获取精准年龄
2020/02/26 PHP
ExtJS Grid使用SimpleStore、多选框的方法
2009/11/20 Javascript
ECMAScript5(ES5)中bind方法使用小结
2015/05/07 Javascript
jquery form表单获取内容以及绑定数据
2016/02/24 Javascript
javascript正则表达式中分组详解
2016/07/17 Javascript
AngularJs基本特性解析(一)
2016/07/21 Javascript
jQuery 实时保存页面动态添加的数据的示例
2017/08/14 jQuery
vue组件详解之使用slot分发内容
2018/04/09 Javascript
js实现圆形显示鼠标单击位置
2020/02/11 Javascript
在Vue 中实现循环渲染多个相同echarts图表
2020/07/20 Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
2020/08/07 Javascript
基于javascript的无缝滚动动画实现2
2020/08/07 Javascript
遗传算法python版
2018/03/19 Python
使用python读取.text文件特定行的数据方法
2019/01/28 Python
Python不同目录间进行模块调用的实现方法
2019/01/29 Python
python函数与方法的区别总结
2019/06/23 Python
python 使用装饰器并记录log的示例代码
2019/07/12 Python
django如何实现视图重定向
2019/07/24 Python
keras load model时出现Missing Layer错误的解决方式
2020/06/11 Python
Lookfantastic挪威官网:英国知名美妆购物网站
2017/07/26 全球购物
实习期自我鉴定
2013/10/11 职场文书
结婚邀请函范文
2014/01/14 职场文书
美术教师自我鉴定
2014/02/12 职场文书
毕业生求职信
2014/06/10 职场文书
体育口号大全
2014/06/18 职场文书
幼儿园大班毕业评语
2014/12/31 职场文书
廉洁自律承诺书范文
2015/04/28 职场文书
社区敬老月活动总结
2015/05/07 职场文书
2015年质量管理工作总结范文
2015/05/18 职场文书
浅谈如何写好演讲稿?
2019/06/12 职场文书