javascript--枚举算法实现
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">
//枚举算法--》穷举算法
window.onload=function () {
var aA=document.getElementsByTagName('a');//get A
var oUl=document.getElementById('uli');//get ul
var aLi=document.getElementsByTagName('li');//get li for (var i = 0; i < aA.length; i++) {//给A加入点击事件
aA[i].onclick=function () {//给每一个里加入点击事件
if(mj(this.innerHTML)){//没有同样的
var oLi=document.createElement('li');
oLi.innerHTML=this.innerHTML;
if(aLi[0]){
oUl.appendChild(oLi);//第一次显
}else{
oUl.insertBefore(oLi, aLi[0])//仅仅要点击即显示在最前面
} }else{//有同样的。不再显示
mj2(this.innerHTML);
}
};
};
function mj (text) {//推断是否存在相通的Li
var result=true;
for (var i = 0; i < aLi.length; i++) {
if(aLi[i].innerHTML==text){
result=false;
}
}; return result;
} function mj2 (text) {//存在同样的li时。将当前的Li加入在第一个位置!
for (var i = 0; i < aLi.length; i++) {
if(aLi[i].innerHTML==text){
oUl.insertBefore(aLi[i], aLi[0])
}
}; }
}
</script>
</head>
<body>
<a href="javascript:;">北京</a>
<a href="javascript:;">上海</a>
<a href="javascript:;">杭州</a>
<a href="javascript:;">天津</a>
<a href="javascript:;">武汉</a>
<a href="javascript:;">长沙</a>
<a href="javascript:;">广州</a>
<a href="javascript:;">神州</a> <ul id="uli">
</ul> </body>
</html>
1、点击当中一个。显示在最前面!
2、当点击第二次的时候。不再显示!!
javascript--枚举算法实现的更多相关文章
- 利用枚举算法实现todoList:把对应项添加的内容列表
功能: 点击城市列表项,如果内容列表不存在,则插入点击项: 如果内容列表中已存在,则不插入,然后把内容列表中的对应项放到第一位. HTML代码: <!DOCTYPE html> <h ...
- RX学习笔记:FreeCodeCamp的JavaScript基本算法挑战
FreeCodeCamp的JavaScript基本算法挑战 https://www.freecodecamp.com 2016-07-03 JavaScript还不是非常熟悉,用已经会的知识来解这些题 ...
- 枚举算法总结 coming~^.*
感谢CJ同学监督╭(╯^╰)╮.从放假到现在都木有更新博客了~噶呜~小娘谨记教诲,每天会更新博客==!! 看了一下POJ训练计划,虽然已经零零散散做了40多道题了,还是从头开始整理一下漏掉的知识点.T ...
- 【枚举Day1】20170529-2枚举算法专题练习 题目
20170529-2枚举算法专题练习 题解: http://www.cnblogs.com/ljc20020730/p/6918360.html 青岛二中日期 序号 题目名称 输入文件名 输出文件名 ...
- FCC的javascript初级算法题解答
FCC上的javascript基础算法题 前一阵子做的基础算法题,感觉做完后收获还蛮大的,现在将自己的做法总结出来,供大家参考讨论.基本上做到尽量简短有效,但有些算法还可以继续简化,比如第七题若采用正 ...
- javascript 冒泡排序算法
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- C++枚举算法
枚举算法 什么是枚举? 枚举,顾名思义,就是用最笨的方法,去解决问题(暴力枚举),一个集的枚举是列出某些有穷序列集的所有成员的程序,或者是一种特定类型对象的计数.这两种类型经常(但不总是)重叠. 枚举 ...
- JavaScript 排序算法——快速排序
常见排序 javaScript 实现的常见排序算法有:冒泡排序.选择排序.插入排序.谢尔排序.快速排序(递归).快速排序(堆栈).归并排序.堆排序. 过程 "快速排序"的思想很简单 ...
- JavaScript 排序算法(JavaScript sorting algorithms)
JavaScrip 排序算法(JavaScript Sorting Algorithms) 基础构造函数 以下几种排序算法做为方法放在构造函数里. function ArrayList () { va ...
- JavaScript 排序算法
排序也是在程序中经常用到的算法.无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小.如果是数字,我们可以直接比较,但如果是字符串或者两个对象呢?直接比较数学上的大小是没有意义的,因此,比较的 ...
随机推荐
- nyoj228 士兵杀敌(5)插线问线
士兵杀敌(五) 时间限制:2000 ms | 内存限制:65535 KB 难度:5 描述 南将军麾下有百万精兵,现已知共有M个士兵,编号为0~M,每次有任务的时候,总会有一批编号连在一起人请战 ...
- vue2.0的常用功能简介
路由跳转 当我们想要实现点击链接跳转时,可以使用$router来进行跳转 语法如下: '}}) 这里path是要跳转的路径,query里面是路径跳转时要携带的参数,以对象的形式存在 2 获取路由参数 ...
- NOR FLASH驱动程序
NOR NAND接口: RAM-Like,引脚多 引脚少,复用容量: 小 1M 2M 3M ...
- rpm信息查看
rpm -qpi xxx.rpm #查看rpm包相关信息,一般有版本,build日期,功能描述,大小,公司等等 rpm -qpl xxx.rpm #查看rpm包含安装的目录和文件 rpm -qpc ...
- db2 查看进程 db2中的常用命令及使用方法
一 高(重要度) 1 启动一个db 2实例使用: net start instanceName 2 停止一个db 2实例使用: net stop instanceName 3 启动配置助手: db2= ...
- SQL Injection绕过技巧
0x00 sql注入的原因 sql注入的原因,表面上说是因为 拼接字符串,构成sql语句,没有使用 sql语句预编译,绑定变量. 但是更深层次的原因是,将用户输入的字符串,当成了 "sql语 ...
- aspx小集合
1.注意GroupName <asp:RadioButton ID="rdoF" runat="server" Text="男" Ch ...
- js实现分页的几个源码,看完基本就懂了
第一种: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> ...
- JavaScript 使用 php 的变量
php 里面有一个变量,我想让 js 调用他, 有如下流程: <?php for ($i = 0; $i < 8; $i++) { echo "<tr>"; ...
- linux下设置了SSH免密码登录但还是需要输入密码的解决办法
今天在设置linux的免密码登录后,仍然需要输入密码,后来找到了原因,是因为用户没有权限修改.ssh目录下的know_hosts文件导致的. 具体情况是这样的: 在/home/username/.ss ...