js闭包讲解
今日看到之前写的一段js代码,关于导航部分鼠标放上去变类,鼠标离开等效果

前端代码
<div class="con12">
<div class="left">
<ul id="liu">
<li class="chang02">长双歧杆菌</li>
<li class="chang01">短双歧杆菌</li>
<li class="chang01">乳双歧杆菌</li>
<li class="chang01">嗜酸乳杆菌</li>
<li class="chang01">罗伊氏乳杆菌</li>
<li class="chang01">鼠李糖乳杆菌</li>
</ul>
</div> <div class="right"> <div class="show">
<div class="title">
<span class="one">长双歧杆菌</span> <span class="two">Bifidobacterium longum</span> <span class="three">11.5亿 CFU/小袋</span>
</div>
<div class="des">
可降低肠道 pH,抑制致病菌的生长繁殖,达到调节肠道菌群失调和改善肠道微环境的效果<span class="biao">[7]</span>。
</div>
<div class="desimg">
<img src="img/des01.jpg">
</div>
</div> <div class="show none">
<div class="title">
<span class="one">短双歧杆菌</span> <span class="two">Bifidobacterium breve</span> <span class="three">11亿 CFU/小袋</span>
</div>
<div class="des">
拥有较强的抗酸能力与粘附力,黏附在肠道细胞膜上,能有效阻止致病菌的入侵,给宝宝一个健康的肠道<span class="biao">[8,9]</span>。
</div>
<div class="desimg">
<img src="img/duansuangqi.jpg">
</div>
</div> <div class="show none">
<div class="title">
<span class="one">乳酸双歧杆菌</span> <span class="two">Bifidobacterium lactis</span> <span class="three">12亿 CFU/小袋</span>
</div>
<div class="des">
乳双歧杆菌能增强宝宝的细胞免疫和体液免疫功能,提高宝宝的免疫力,让宝宝少生病<span class="biao">[10]</span>。
</div>
<div class="desimg">
<img src="img/rusuangqi.jpg">
</div>
</div> <div class="show none">
<div class="title">
<span class="one">鼠李糖乳杆菌</span> <span class="two">Lactobacillus rhamnosus</span> <span class="three">6.5亿 CFU/小袋</span>
</div>
<div class="des">
参与宝宝消化道内菌群调节, 排除宝宝体内毒素,维持宝宝肠道健康<span class="biao">[11]</span>。
</div>
<div class="desimg">
<img src="img/shulitang.jpg">
</div>
</div> <div class="show none">
<div class="title">
<span class="one">罗伊氏乳杆菌</span> <span class="two">Lactobacillus reuteri</span> <span class="three">1亿 CFU/小袋</span>
</div>
<div class="des">
增加肠道固水物质——短链脂肪酸的含量,软化大便,并且有很强的粘附能力,对改善肠道黏膜免疫功能,提高宝宝免疫力具有积极的作用<span class="biao">[12]</span>。
</div>
<div class="desimg">
<img src="img/luoyishi.jpg">
</div>
</div> <div class="show none">
<div class="title">
<span class="one">嗜酸乳杆菌</span> <span class="two">Lactobacillus acidophilus</span> <span class="three">8亿 CFU/小袋</span>
</div>
<div class="des">
发酵后形成乳酸,帮助宝宝消化肠胃内的食物,提高钙、磷、铁的利用率,并且对其他乳杆菌和双歧杆菌在肠道的增殖具有积极作用<span class="biao">[13,14]</span>。
</div>
<div class="desimg">
<img src="img/sishuanru.jpg">
</div>
</div> </div>
</div>
js代码
window.onload=function(){
var one = document.getElementById('liu');
var oPoint = one.getElementsByTagName('li');
var div = document.getElementsByClassName('show');
var lilen = oPoint.length;
for (var i = 0; i < lilen; i++) {
oPoint[i].index = i;
oPoint[i].onmouseover = function (){
for (var j = 0; j <lilen; j++) {
oPoint[j].className = "chang01";
div[j].className += " none";
}
oPoint[this.index].className = "chang02";
div[this.index].className = "show";
}
}
}
其中,看到
oPoint[i].index = i;
一时之间想不明白,大体好像是关于js的闭包知识,查找资料
https://segmentfault.com/a/1190000002805295
js闭包讲解的更多相关文章
- 简单详细讲解js闭包(看完不懂你砍我!!!)
<javascript高级程序设计>中闭包的概念: 闭包,其实是一种语言特性,它是指的是程序设计语言中,允许将函数看作对象,然后能像在对象中的操作般在函数中定义实例(局部)变量,而这些变量 ...
- js闭包的作用域以及闭包案列的介绍:
转载▼ 标签: it js闭包的作用域以及闭包案列的介绍: 首先我们根据前面的介绍来分析js闭包有什么作用,他会给我们编程带来什么好处? 闭包是为了更方便我们在处理js函数的时候会遇到以下的几 ...
- 大部分人都会做错的经典JS闭包面试题
由工作中演变而来的面试题 这是一个我工作当中的遇到的一个问题,似乎很有趣,就当做了一道题去面试,发现几乎没人能全部答对并说出原因,遂拿出来聊一聊吧. 先看题目代码: function fun(n,o) ...
- Js闭包常见三种用法
Js闭包特性源于内部函数可以将外部函数的活动对象保存在自己的作用域链上,所以使内部函数的可以将外部函数的活动对象占为己有,可以在外部函数销毁时依然存有外部函数内的活动对象内容,这样做的好处是可 ...
- js闭包之初步理解( JavaScript closure)
闭包一直是js中一个比较难于理解的东西,而平时用途又非常多,因此不得不对闭包进行必要的理解,现在来说说我对js闭包的理解. 要理解闭包,肯定是要先了解js的一个重要特性, 回想一下,那就是函数作用域, ...
- (原创)JS闭包看代码理解
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="C ...
- js闭包理解
js闭包的作用是使函数外可以访问函数内部的变量,是通过 在函数内部 定义 访问函数内变量 的函数实现的,内部的一个函数产生一个闭包 function a() { var i=0; return fun ...
- js闭包理解实例小结
Js闭包 闭包前要了解的知识 1. 函数作用域 (1).Js语言特殊之处在于函数内部可以直接读取全局变量 <script type="text/javascript"> ...
- Js闭包的用途
本来想总结一点JavaScript中的闭包的一些用法,在查资料的时候发现了一篇很好的文章,就转过来收藏了,下面附上传送门: js闭包的用途 ---------sunlylorn 我们来看看闭包的用途. ...
随机推荐
- 一道dfs和dp结合的好题 --- Longest Run on a SnowboardUVA-10285
题目链接: https://vjudge.net/problem/19213/origin 大致题意: 一个滑雪者想知道自己在固定高度的山坡中最多能滑的距离是多少. 思路: 首先想到的就是dfs,但是 ...
- Petrozavodsk Summer-2017. Warsaw U Contest
A. Connectivity 设$f[i][j]$为第$i$张图中$j$点所在连通块的编号,加边时可以通过启发式合并在$O(dn\log n)$的时间内维护出来. 对于每个点,设$h[i]$为$f[ ...
- XIV Open Cup named after E.V. Pankratiev. GP of America
A. Ancient Diplomacy 建图,同色点间边权为$0$,异色点间边权为$1$,则等价于找一个点使得到它最短路最长的点的最短路最小,Floyd即可. 时间复杂度$O(n^3)$. #inc ...
- CentOS下 SVN版本控制的安装(包括yum与非yum)的步骤记录。
一.yum安装 rpm -qa subversion //检查是否安装了低版本的SVN yum remove subversion //如果存储旧版本,卸载旧版本SVN 开始安装 yum -y ins ...
- php 常用正则
1 手机 /^1[34578]\d{9}$/2 qq /^[1-9][0-9]{5,10}$/3 邮箱 /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za ...
- Python基础之数据基本运算
一.核心数据类型(五种): 在Python中变量没有数据类型,但关联的对象有数据类型,可通过type函数查看数据类型 1.整型(Int): 包含正整数,负整数和零 二进制:逢二进一,书写格式为 a = ...
- windows安装虚拟机(VMware)
一.安装虚拟机 1.打开安装包 2.接受协议 3.选择安装位置 4.按照提示下一步即可 5.完成安装 二.安装带有GUI的Redhat7系统 1.选择自定义安装 2.默认虚拟机硬件兼容 3.选择稍后安 ...
- MacBook Air 装win10系统 by DODUI
为了给齐哥更完美的体验Windows10系统,DODUI亲手操刀MacBook双系统安装Win10,双系统安装教程如下: 终于遇到各种奇葩问题,给小伙伴分享一下. 双系统安装Win10准备工具: 1. ...
- ELK之使用packetbeat分析网络包流量
介绍 packbeat是一个开源的实时网络抓包与分析框架,内置了很多常见的协议捕获及解析,如HTTP.MySQL.Redis等.在实际使用中,通常和Elasticsearch以及kibana联合使用, ...
- java_基础_static{}语句块
static{}语句块会在类被加载的时候当且仅当执行一次,一般用于初始化变量和调用静态方法 Class.forName(“类名”);方法执行时会加载类 外界调用类中静态变量是不会加载类的,也就是说,如 ...