isNaN()
浮点数存在精度问题,所以运算的时候不要直接使用浮点数进行运算
第一个age是10 ,第二个是11
从左往右开始,
与要假的,或要真的
只要符合条件了,就不往后运算了。
这个num最后还是0
这里Switch(num)中的变量与case中的value判断的时候用的是 ===
利用对象创建数组
利用字面量创建数组
1、定义一个变量为0 作为索引 变量++
2、直接使用新数组的长度作为索引
3、直接push()方法
如果需要返回多个值,可以封装到一个数组里面返回
结果是20
结果是undefined
结果是 999 99undefined
变量和函数提升后
构造函数new对象的时候
如果使用innerHTML拼接字符串的话,大概3000
如果使用creatHTML 的话 大概 30
如果使用innerHTML但是使用数组拼接字符串的话,大概8
IE9以后才支持的事件监听
IE9以前支持的事件监听(了解不常用)
什么是事件对象
事件对象的使用和用法
事件对象的常见属性和方法
e.target – 返回触发事件的对象
e.type – 返回事件类型
e.preventDefault(); – 阻止默认行为
e.stopPropagation(); – 阻止冒泡
兼容性写法,了解就行,一般不写
禁止选中文字和禁止右键菜单
鼠标事件对象
键盘事件对象
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>按下s键,光标定位到搜索框title>
<link rel="stylesheet" href="./css/index.css">
head>
<body>
<input type="text">
body>
<script src="./js/index.js">script>
html>
var search = document.querySelector('input');
document.addEventListener('keyup', function (e) {
if (e.keyCode === 83) {
search.focus();
}
})
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>输入框内容放大title>
<link rel="stylesheet" href="./css/index.css">
head>
<body>
<div class="bg">
<div class="bigger">
<div class="rectangle">div>
<div class="triangle">div>
div>
<input type="text" class="input_one">
<input type="text" class="input_two">
div>
body>
<script src="./js/index.js">script>
html>
* {
margin: 0;
padding: 0;
list-style: none;
}
.bg{
width: 300px;
height: 200px;
background-color: antiquewhite;
}
.bigger .rectangle {
width: 260px;
height: 40px;
background-color: #fff;
margin-left: 5px;
font-size: 22px;
line-height: 40px;
border-radius: 3px;
box-shadow: 2px 4px 2px 1px rgba(0, 0, 0, .2);;
}
.bigger .triangle{
width: 10px;
height: 10px;
background-color: #fff;
border: 1px solid #fff;
border-top: 0;
border-left: 0;
transform: translate(36px,-6px) rotate(45deg);
}
.bigger{
display: none;
position: absolute;
}
input {
position: relative;
top: 48px;
width: 200px;
display: block;
margin: 3px;
}
var input_one = document.querySelector('.input_one');
var bigger = document.querySelector('.bigger');
input_one.addEventListener('keyup',function(){
//内容不为空 就放大
if (this.value == '') {
bigger.style.display = 'none';
} else {
bigger.style.display = 'block';
bigger.children[0].innerHTML = this.value;
}
})
input_one.addEventListener('blur', function () {
bigger.style.display = 'none';
})
input_one.addEventListener('focus', function () {
if (this.value != '') {
bigger.style.display = 'block';
}
})
第一个不会触发
两个都可以触发
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>京东倒计时title>
<link rel="stylesheet" href="./css/index.css">
head>
<body>
<div class="bg">
<div class="timer">
<div class="hour">00div>
<div class="minute">00div>
<div class="second">00div>
div>
<div class="brs">div>
div>
body>
<script src="./js/index.js">script>
html>
* {
margin: 0;
padding: 0;
list-style: none;
}
.bg{
position: relative;
width: 500px;
height: 200px;
background: #000;
}
.timer {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);
width: 340px;
height: 100px;
background-color: #000;
}
.brs {
position: absolute;
z-index: 2;
width: 490px;
height: 3px;
background-color: black;
top: 50%;
transform: translateY(-50%);
}
.timer .hour {
display: inline-block;
text-align: center;
line-height: 100px;
margin: 0 5px;
width: 100px;
height: 100px;
background-color: rgb(66, 62, 62);;
color: #fff;
font-size: 80px;
font-weight: 700;
border-radius: 10px;
}
.timer .minute {
display: inline-block;
text-align: center;
line-height: 100px;
margin: 0 5px;
width: 100px;
height: 100px;
background-color: rgb(66, 62, 62);;
color: #fff;
font-size: 80px;
font-weight: 700;
border-radius: 10px;
}
.timer .second {
display: inline-block;
text-align: center;
line-height: 100px;
margin: 0 5px;
width: 100px;
height: 100px;
background-color: rgb(66, 62, 62);
color: #fff;
font-size: 80px;
font-weight: 700;
border-radius: 10px;
}
var hour = document.querySelector('.hour');
var minute = document.querySelector('.minute');
var second = document.querySelector('.second');
var inputTime = new Date('2022-11-10 21:45:00');
countDown(); //先调用一次,可以不让他显示初始内容
function countDown() {
var nowTime = new Date();
var times = (inputTime - nowTime) / 1000;
var h = parseInt(times / 60 / 60 % 24);
var m = parseInt(times / 60 % 60);
var s = parseInt(times % 60);
if (h < 0) {
h = '00';
} else {
h = h < 10 ? '0' + h : h;
}
if (m < 0) {
m = '00';
} else {
m = m < 10 ? '0' + m : m;
}
if (s < 0) {
s = '00';
} else {
s = s < 10 ? '0' + s : s;
}
hour.innerHTML = h;
minute.innerHTML = m;
second.innerHTML = s;
}
setInterval(countDown,1000)
需要练习
可以用对象属性的方法,这样他就不会重新开辟内存空间,而且没有歧义
改进:让盒子可以左右移动到整数上
1.jQuery基础选择器
2.jQuery层级选择器
3.jQuery的隐式迭代
补充:
4.jQuery的筛选选择器
5.jQuery的筛选方法
6.jQuery的排它思想
$(function () {
$('.nav li').mouseover(function () {
$(this).children('ul').show();
});
$('.nav li').mouseout(function () {
$(this).children('ul').hide();
})
})
1.操作CSS方法
2.设置类样式方法
这一块需要练习
3.类操作与className区别
1.显示隐藏效果
2.滑动效果以及事件切换
事件切换
突出显示
遍历元素
创建元素
添加元素
删除元素
大小
位置
深拷贝和浅拷贝