取模运算:
0%3=0
1%3=1
2%3=2
3%3=0
-----------------------------------------------------------------------
<ul id="ul1">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<!--
第一种情况:给li循环添加背景颜色 红、黄、蓝、红、黄、蓝。。
var aLi = document.getElementsByTagName('li');
var arr = [ 'red', 'yellow', 'blue' ];
for( var i=0; i<aLi.length; i++ ){
aLi[i].style.background = arr[i%arr.length];
}
第二种情况:鼠标移出返回其原来的颜色 a、取模的方法
var aLi = document.getElementsByTagName('li');
var arr = [ 'red', 'yellow', 'blue' ];
for( var i=0; i<aLi.length; i++ ){
aLi[i].index = i; //给其添加自定义属性
aLi[i].style.background = arr[i%arr.length];
aLi[i].onmouseover = function (){
this.style.background = 'gray';
};
aLi[i].onmouseout = function (){
this.style.background = arr[this.index%arr.length]; //for循环下的function使用的i=aLi.length,想办法使右边的值为0,1,2
};
}
第三种情况:b、利用变量 先记录其颜色,再返回其颜色值
var aLi = document.getElementsByTagName('li');
var arr = [ 'red', 'yellow', 'blue' ];
var str = '';
for( var i=0; i<aLi.length; i++ ){
aLi[i].index = i;
aLi[i].style.background = arr[i%arr.length];
aLi[i].onmouseover = function (){
str = this.style.background;
// 先存颜色
this.style.background = 'gray';
};
aLi[i].onmouseout = function (){
this.style.background = str;
};
}
----------------------------------------
&&应用 ||或 !否
var a=30<90 &&20; //先将"30<90 &&20"看做整体即(30<90 &&20),然后先左边成立,再执行右边
alert(a); //20
第二种:
var a=300<90 &&20;
alert(a); //false
第三种:
alert( 120<90 || 230<80 ); //false 如果左边靠谱,就不会再执行右边。如果左边不靠谱,再去执行右边
var b=120<90||20;
alert(b); //20
var b=120<90||20<12;
alert(b); //false
----------------------------
! 取反
var c=!true;
alert(c); //false
var d=!!true;
alert(d); //true
var e=!200; //数字200在布尔值中相当于true 。!后面的值会进行数据类型转换,转换成布尔值
alert(e); //false