dom 按着shift多选
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title> <style>
body { margin: 0; padding: 0; }
ul { padding: 0; margin: 0; }
li { list-style: none; }
a { text-decoration: none; color: #000; display: block; }
#div1 { width: 250px; height: 20px; border: 1px solid #fe6601; padding: 5px; line-height:20px; margin: 20px auto 0 auto;}
#ul1 { margin: 0 auto; width: 260px; line-height: 20px; border: 1px solid #fe6601; display: none;}
#ul1 li a { padding: 5px; }
#ul1 li a:hover { background: #fe6601; color: #fff; }
</style>
<script type="text/javascript">
window.onload = function ()
{
var odiv = document.getElementById('div1');
var oul = document.getElementById('ul1');
var arr = []; odiv.onclick = function (ev)
{
var ev = ev || event;
ev.cancelBubble = true;
oul.style.display = 'block';
} for( var i = 0; i < oul.children.length; i++)
{
oul.children[i].onclick = function (ev)
{
var ev = ev || event;
if(ev.shiftKey)
{
ev.cancelBubble = 'true';
} for(var i = 0; i < arr.length; i++)
{
if(this.children[0].innerHTML == arr[i])
{
arr.splice(i,1);
odiv.innerHTML = arr.join(',');
bgcolor();
return;
}
}
arr.push ( this.children[0].innerHTML);
odiv.innerHTML = arr.join(',');
bgcolor(); function bgcolor ()
{
for(var i = 0; i < oul.children.length; i++)
{
oul.children[i].children[0].style.background = '';
oul.children[i].children[0].style.color = '';
} var arr1 = odiv.innerHTML.split(',');
for(var i = 0; i < arr1.length; i++)
{
for(var j = 0; j < oul.children.length ; j++)
{
if(oul.children[j].children[0].innerHTML == arr1[i])
{
oul.children[j].children[0].style.background = '#fe6601';
oul.children[j].children[0].style.color = '#fff';
}
}
}
}
}
} document.onclick = function ()
{
oul.style.display = 'none';
arr = [];
}
};
</script>
</head> <body>
<div id="div1">按住shift多</div>
<ul id="ul1">
<li><a href="javascript:;">宋体</a></li>
<li><a href="javascript:;">黑体</a></li>
<li><a href="javascript:;">楷体</a></li>
<li><a href="javascript:;">微软雅黑</a></li>
<li><a href="javascript:;">新宋体</a></li>
<li><a href="javascript:;">仿宋</a></li>
</ul>
</body>
</html>
dom 按着shift多选的更多相关文章
- Element中Tree树结构组件中实现Ctrl和Shift多选
在Element中的树结构中, 实现多选功能,首先的是判断有没有按下键盘ctrl和shift按键.但是在Element中的tree组件的左键点击事件是没有提供$event鼠标属性判断的.所以就需要在函 ...
- element穿梭框el-transfer增加拖拽排序和shift多选checkbox功能
<template> <div class="demo"> <el-transfer v-model="value" filter ...
- 在html页,使用ctrl,shift多选表格行
前段时间,项目中遇到这样一个需求.需要在页面中像windows资源管理器中一样可以使用ctrl和shift键来多选. <html> <head> <style> b ...
- jquery VS Dom(小实例单选-多选-反选)
一直以来大家对jquery评价莫过于六个字 “吃得少,干的多” ,应用实例让大家看看这款牛到爆的插件能帮我们做什么,话不多说,直接加码 <!DOCTYPE html> <html l ...
- DOM(十)使用DOM设置单选按钮、复选框、下拉菜单
1.设置单选按钮 单选按钮在表单中即<input type="radio" />它是一组供用户选择的对象,但每次只能选一个.每一个都有checked属性,当一项选择为t ...
- easyui datagrid shift 多选
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta na ...
- 按住CTRL多选,按住shift连选的实现
<tr class="address" v-for="(counts, index) in counts" :key="index" ...
- DOM表单(复选框)
在表单中,尤为重要的一个属性是name <!--复选框的全选.全不选.反选--> <!DOCTYPE> <html> <head lang="en& ...
- DOM操作案例之--全选与反选
全选与反选在表单类的项目中还是很常见的,电商项目中的购物车一定少不了这个功能. 下面我只就用一个简单的案例做个演示吧. <div class="wrap"> <t ...
随机推荐
- php关于static关键字
静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用.静态属性不允许对象使用->操作符调用.静态方法中,$this伪变量不允许使用.可以使用self,parent,s ...
- linux学习之centos(一):在VMware虚拟机中安装centos6.5
---安装环境如下--- 虚拟机版本:VMware Workstation_10.0.3(版本信息介绍:VMware-workstation-full-10.0.3-1895310,下载地址:http ...
- 使用multimap创建重复键关联容器
在“使用 <map> 库创建关联容器”一文中,我们讨论了标准库中的 map 关联容器.但那只是 map 容器的一部分.标准库还定义了一个 multimap 容器,它与 map 类似,所不同 ...
- highCharts入门-强大的图表库插件
简介 Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习.个人网站和非商业 ...
- chrome浏览器下禁制 textarea改变大小; Jquery的textareaCounter插件控制textarea输入的字符数量
给 textarea 添加一个css 样式即可 resize: none; 用Jquery的插件控制textarea输入的字符数量 一:引用Jquery脚本,并引入 textareaCounte ...
- Linux Shell编程(4): 逻辑运算符、逻辑表达式详解
shell的逻辑运算符 涉及有以下几种类型,因此只要适当选择,可以解决我们很多复杂的判断,达到事半功倍效果. 一.逻辑运算符 逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标! -f 常用!侦测 ...
- HDU1026 Ignatius and the Princess I
解题思路:打印路径是关键,细节处理见代码. #include<cstdio> #include<cstring> #include<algorithm> using ...
- linux VFS 内核数据结构
<strong>简单归纳:fd只是一个整数,在open时产生.起到一个索引的作用,进程通过PCB中的文件描述符表找到该fd所指向的文件指针filp.</strong> 文件描述 ...
- exp/imp使用
[sql]view plaincopy 1.EXP: 1.完全: EXP SYSTEM/MANAGER BUFFER=64000 FILE=C:\FULL.DMP FULL=Y 如果要执行完 ...
- 【转】MIPS交叉编译环境的建立
原文网址:http://imgtec.eetrend.com/forum/2371 我觉得对于MIPS处理起来说最令新手头疼的应该就是编译环境的建立了,这点MIPS做的确实不是很好,不像ARM那样有许 ...