ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 第1天 ### 1.js基本介绍.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <a href="" onclick="alert(1)">百度</a> <!-- JavaScript js是什么? 一种基于客户端浏览器、面向(基于)对象、事件驱动式的网页脚本语言 js特点: 简单、易学、易用 跨平台 动态、交互式的操作方式 js能做什么? 表单验证 网页特效 js不能做什么? 不能操作数据库 不能操作文件 如何学习? 1.基本语法 (ECMAScript) 2.BOM 浏览器对象 3.DOM 文档对象模式 --> </body> <script> // alert(1); </script> </html> ~~~ ### 2.js的引入.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <!-- 引入外部的css文件 --> <link rel="stylesheet" href=""> <!-- 4.通过外部引入js文件 --> <script src="./js.js"> 写在这里面的代码无效 外部引入的js标签对里面的内容相当于注释 alert('我是写在引入外部js同时,写的js代码'); </script> </head> <body> <!-- 2.通过http协议引入js --> <a href="http://www.baidu.com">百度</a> <a href="javascript:alert(1)">百度</a> <!-- 通过return false阻止默认行为 --> <a href="" onclick="return false">去百度</a> <a href="http://www.baidu.com" onclick="return test();">百度1</a> <!-- 3.通过事件引入js代码 --> <a href="http://www.bai.com" onclick="alert('想去百度?')">去百度</a> <a href="http">去百度</a> </body> <script> //1.直接写在script标签里面 //这是写在js里面的代码 /* 这是js的多行注释 */ // alert(1); function test() { return false; } </script> </html> ~~~ ### 3.js能出现的位置.html ### ~~~ <script> // alert(1); </script> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title> <script> //js代码可以出现在html中的任何位置,除了title里面 alert(1); </script> </title> <script> // alert(1); </script> </head> <body> <script> // alert(1); </script> <div> <script> // alert(1); </script> </div> </body> <script> // alert(1); </script> </html> ~~~ ### 4.js代码的执行顺序.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style>#box{width:200px; height:200px; background:pink;}</style> </head> <body> <div id="box" title="" style=""></div> <script> //js代码执行顺序跟html代码同步 // alert(1); </script> <!-- <a href="">我爱你</a> --> <script> //找对象 改属性 //1.找对象 var box = document.getElementById('box'); // alert(box); //2.改属性 box.title = '我爱你们'; box.style.width = '400px' box.style.background = 'orange'; // alert(2); </script> </body> </html> ~~~ ### 5.js调试方式.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <button onclick="test();">求虐</button> <script> //6.debugger 终断代码,点一步执行一步 // debugger; //1.alert(); 弹出框 终断程序执行 // alert(1); //2.document.write() 相当于php中的echo 有一个致命东西,代码执行完毕之后,会覆盖掉你整个文件 // document.write('我爱你'); // document.write('<br>'); function test() { // document.write('我恨你,去死吧!!'); } //test(); //3.console.log() 在控制台日志里面输出 不能解析html标签\r\n console.log(111); console.error('我爱你'); //4.console.dir() 相当于我们php中print_r 打印数组 var list = [1,2,3,4,5]; //定义数组 console.dir(list); //5.document.title document.title = '我爱你'; document.onmousemove = function(e) { document.title = 'X:' + e.clientX + 'Y:' + e.clientY; // document.title = e.clientY; } </script> </body> </html> ~~~ ### 6.跟随鼠标移动的图片.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> #img{position:absolute; left:100px; top:100px;} </style> </head> <body> <img src="./4.jpg" alt="" width="200px" id="img"> <script> //1.找对象 var img = document.getElementById('img'); //2.改属性 document.onmousemove = function(e) { img.style.top = e.clientY + 'px'; img.style.left = e.clientX + 'px'; } </script> </body> </html> ~~~ ### 7.奇葩的运算符.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script> //js严格区分大小写 //运算符 // + 运算 连接符 // 如果两边都是数字的话,那么是运算 var num = 10 + 10; // alert(num); //如果有一边是字符串,那么就是拼接 // var str = 'hello' + ' world'; var str = 'hello' + 10; // alert(str); //+= var num = 5; num = num += 'hello'; //num = num + 'hello' // alert(num); document.write(10 + 10 +10); //30 document.write('<br>'); document.write('10' + 10 +10); //101010 document.write('<br>'); document.write(10 + '10' +10); //101010 document.write('<br>'); document.write(10 + 10 +'10'); //2010 document.write('<br>'); // . 的 对象属性访问 var obj = {name:'jack',age:18} // alert(obj.name); // alert(obj['name']); //. 跟[] 的区别 .不解析变量 []解析变量 var str = 'name'; // alert(obj.str); // alert(obj[str]); //奇葩的分号 ; 命令执行符 //在js代码中,换行也是命令执行符 document.write('我爱你') document.write('我爱你') //不要让我看见这样的代码 //换行产生错误的时候,不再是命令执行符 var num = 10 alert(num); </script> </body> </html> ~~~ ### 8.表格隔行变色.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <table width="600" border="1" id="tab"> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> <tr> <td>001</td> <td>002</td> <td>003</td> <td>004</td> <td>005</td> <td>006</td> <td>007</td> <td>008</td> <td>009</td> <td>010</td> </tr> </table> <script> //1.找对象 var tab = document.getElementById('tab'); var trs = tab.getElementsByTagName('tr'); // console.dir(trs); // alert(trs.length); //2.改属性 for(var i=0; i<trs.length; i++) { if (i % 3 ==0) { trs[i].bgColor = 'red'; } else if(i % 3 ==1) { trs[i].bgColor = 'green'; } else { trs[i].bgColor = 'blue'; } } </script> </body> </html> ~~~ ### 9.with.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> </body> <script> // alert(this); // with(window){ // document.write('我爱着你'); // document.write('我爱着你'); // document.write('我爱着你'); // } // window.document.write('我爱着你'); with(document){ write('我爱你') write('我爱你') write('我爱你') write('我爱你') write('我爱你') } </script> </html> ~~~ ### 10.js流程控制.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> </body> <script> //流程控制 //分支 if else switch() if else if else var num = 10; if (num > 10) { } else if(num >5) { } else { } var num = '10'; //要求数据类型严格匹配 switch(num) { case '10': // alert(num); break; case '20': alert(num); break; } //循环 for whiel do-while() foreach //for-in 增强版for循环 var list = [1,2,3,4,5]; //foreache($list as $key=>$val) for (key in list) { var val = list[key]; document.write(key); document.write(list[key]); } </script> </html> ~~~ ### 11.定时器.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <button onclick='stop();'>哥不想等了</button> </body> <script> //定时器 //一次性的 //setTimeout() //第一个参数是一个回调函数 //第二个参数时间 单位毫秒 /* setTimeout('test()',3000); function test() { alert(1); } */ timmer = setTimeout(function(){ alert('大爷来了'); },5000); // clearTimeout(timmer); //周期性 //setInterval() timmer1 = setInterval(function(){ console.log(1); // document.write(111); },1000); function stop() { //清除闹钟 clearTimeout(timmer); clearInterval(timmer1); } </script> </html> ~~~ ### 12.移动的盒子.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> #box{width:200px; height:200px; background:pink; position:absolute; left:10px;} </style> </head> <body> <div id="box"></div> </body> <script> //1.找对象 var box = document.getElementById('box'); //2.该属性 var num = 0; setInterval(function(){ num +=5; box.style.left = num + 'px'; },20); </script> </html> ~~~ ### 13.进度条.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> #die{width:600px; height:30px; border:1px solid yellow;} #son{width:10%; height:30px; background:green;} </style> </head> <body> <div id="die"> <div id="son"></div> </div> </body> <script> //1.找对象 var son = document.getElementById('son'); //2.改属性 var num = 0; timmer = setInterval(function(){ son.style.width = num + '%'; if (num ==100) { clearInterval(timmer); alert('片子下载完成,请欣赏!!'); } num++; },20); </script> </html> ~~~ ### 14.新消息提醒.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> </body> <script> // document.title = '【新消息】'; // document.title = '【  】'; var mark = true; setInterval(function(){ if (mark) { document.title = '【新消息】'; mark = false; } else { document.title = '【   】'; mark = true; } },500); </script> </html> ~~~ ### 15.等待按钮.html ### ~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <center> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <p>全都说废话啊啊啊啊啊啊啊啊啊啊啊啊</p> <button id="btn">(10秒后)下一步</button> </center> </body> <script> //1.找对象 var btn = document.getElementById('btn'); //2.改属性 btn.disabled = 'true'; num = 10; timmer = setInterval(function(){ num--; btn.innerHTML = '(' + num + '秒后)下一步'; if (num == 0) { clearInterval(timmer); btn.disabled = false; btn.innerHTML = '下一步'; } },1000); </script> </html> ~~~