js基础2应用案例
来源:互联网 发布:java开发常见问题 编辑:程序博客网 时间:2024/05/22 09:39
1. 变量声明提升 面试题!!!
3. 轮播图的切换,函数封装原理!!背景图切换
4. 返回值 return
7. this 表单验证案例 if(){ }else if() {}
8. 搜索框鼠标自动获取焦点focus( ) 鼠标经过选择表单select( )
9. for循环 输出金字塔 案例掌握思想
10. getElementsByTagName()
Var a = 10, b = 20;
等价的
Var a =10;
Var b =20;
1 function fun(){2 console.log(num);3 var num = 20;4 }
相当于 ---
5 function fun(){6 var num;7 console.log(num); // undefined8 Num = 20;9 }
在函数体内部,声明变量,会把该声明提升到函数体的最顶端。只提升变量声明,不赋值。
面试题:
var a = 18;f1();function f1(){ var b=9; console.log(a); console.log(b); var a = '123';}
结果是: undefined 9
2. 应用案例函数传参数显示盒子 内嵌式
<style> div { width: 100px; height: 100px; background-color: pink; margin:20px; display: none; } </style>
<script> window.onload = function(){ function fn(obj){ var ob = document.getElementById(obj); ob.style.display = "block"; } } </script>
<body><button onclick = "fn('demo1')">第1个按钮</button><button onclick = "fn('demo2')">第2个按钮</button><button onclick = "fn('demo3')">第3个按钮</button><button onclick = "fn('demo4')">第4个按钮</button><div id="demo1">1</div><div id="demo2">2</div><div id="demo3">3</div><div id="demo4">4</div></body>
3. 轮播图的切换,函数封装原理!!背景图切换
<style> *{margin:0;padding:0;} ul{list-style:none;} #box { height: 70px; width: 360px; padding-top: 360px; border:1px solid #ccc; margin:100px auto; overflow: hidden; background: url(images/01big.jpg) no-repeat; } #box ul{ overflow: hidden; border-top:1px solid #ccc; } #box li { float: left; } </style>
<script> window.onload = function(){ /* 一共有五组 这些有哪些相同的部分: 鼠标经过 背景更换图片 我们可以吧这两个放到一个函数里面 重复使用就可以*/ //事件源 li 事件 鼠标经过 事件处理程序 box 更换背景 /* var li02 = document.getElementById("li02"); var box = document.getElementById("box"); li02.onmouseover = function(){ box.style.backgroundImage = "url(images/02big.jpg)"; } var li01 = document.getElementById("li01"); var box = document.getElementById("box"); li01.onmouseover = function(){ box.style.backgroundImage = "url(images/01big.jpg)"; }*/ var box = document.getElementById("box"); function fn(liid,bg){ // 封装函数 参数的传递 var obj = document.getElementById(liid); obj.onmouseover = function(){ box.style.backgroundImage = bg; } } fn("li01","url(images/01big.jpg)"); // 实参 调用函数 fn("li02","url(images/02big.jpg)"); fn("li03","url(images/03big.jpg)"); fn("li04","url(images/04big.jpg)"); fn("li05","url(images/05big.jpg)"); } </script>
<div id="box"> <ul> <liid="li01"><img src="images/01.jpg" alt=""/></li> <liid="li02"><img src="images/02.jpg" alt=""/></li> <liid="li03"><img src="images/03.jpg" alt=""/></li> <liid="li04"><img src="images/04.jpg" alt=""/></li> <liid="li05"><img src="images/05.jpg" alt=""/></li> </ul></div>
4. 返回值 return
定义:
一个函数实际上就是一个计算过程,计算完成之后的结果就是返回值。
定义函数的返回值:
在函数内部用return来设置返回值,一个函数只能有一个返回值。
同时,终止代码的执行。
所有的自定义函数默认没有返回值;
Return 后面不要换行
5. 算数运算符
A++ ++后置 每次自加1 先运算后自加
++a ++前置 每次自加1 先自加 后运算
6. 搜索框 onfocus onblur css案例 只要是理清楚业务逻辑
<style> input,button { border:0 none; padding:0; } .search { width:258px; height:40px; margin: 100px auto; background-color: pink; } .search input { width:208px; height: 40px; background: url(images/left.jpg) no-repeat; outline-style: none; padding-left: 8px; color: #ccc; float: left; } .search button { height: 40px; width: 42px; background: url(images/right.jpg) no-repeat; float: left; cursor: pointer; } </style>
<script> window.onload = function(){ var txt = document.getElementById("txt"); txt.onfocus = function(){ //得到焦点 //alert("得到了焦点"); //什么时候该清空呢 //用户没有输入的时候,用户第一次使用的时候 // 如果 这里input 里面的文字 是 请输入... 说明用户没有用过,就应该清空 if(txt.value == "请输入..." ) { txt.value = ""; txt.style.color = "#333"; } } txt.onblur = function(){ //失去焦点 //alert("失去了焦点"); //什么时候再还原呢? //input的值是 空的时候,我们再复原 if(txt.value == "") { txt.value = "请输入..."; txt.style.color = "#ccc"; } } } </script>
<body><div class="search"> <input type="text" value="请输入..." id="txt"/> <button></button></div></body>
7. this 表单验证案例 if(){ }else if() {}
指的是本身
This 主要是指事件的调用者。
className 类名
$("result").className ="wrong";
innerHTML 更换盒子里面的内容 文字标签都换.
表单更换内容 Input.value
isNaN nan 不是一个数字 is 是 是 不是一个数字
isNaN(“12”) 如果里面的不是个数字返回 true 否则返回false
<style> .box { text-align: center; margin:100px auto; } span { display: inline-block; width: 150px; height: 20px; border: 1px solid #ccc; font-size:12px; line-height: 20px; text-align: left; padding-left: 20px; background-color: #eee; color:#999; } .right { /*正确的*/ color: #5EFF5E; background:url(images/right.png) no-repeat #DFFFDF 4px 3px; border: 1px solid #ACFFAC; } .wrong { /*错误的*/ background:url(images/wrong.png) no-repeat #FFDCD0 4px 3px; border: 1px solid #FFAC91; color: #FF6B39; } </style>
<script> window.onload = function(){ function $id(id){return document.getElementById(id)}; $id("txt").onblur = function(){ if (this.value == "") { $id("result").className = "wrong"; $id("result").innerHTML = "内容不能为空"; }else if(isNaN(this.value)){ $id("result").className = "wrong"; $id("result").innerHTML = "内容必须为数字"; }else if(this.value > 150 || this.value < 0){ $id("result").className = "wrong"; $id("result").innerHTML = "内容不正确"; }else{ $id("result").className = "right"; $id("result").innerHTML = "输入正确"; } } } </script>
<body><div class="box"> 语文: <input type="text" id="txt"/> <span id="result">请输入成绩</span></div></body>
8. 搜索框鼠标自动获取焦点focus( ) 鼠标经过选择表单select( )
<script> window.onload = function(){ var txt = document.getElementById("txt"); var sele = document.getElementById("select"); txt.focus(); //自动获得焦点 sele.onmouseover = function(){ this.select(); //选择 } } </script>
<body>自动获得焦点:<input type="text" id="txt"/>鼠标经过选择表单:<input type="text" id="select"/></body>
9. for循环 输出金字塔 案例掌握思想
<script> for (var i = 0; i <=100; i+=3) { document.write("<hr width="+i+"%>"); //重点 }; </script>
10. getElementsByTagName()
我们想要获取某类标签 比如说所有 的div li span
getElementsByTagName(); 很多个所以是复数 很多个
0 0
- js基础2应用案例
- js基础3应用案例
- js基础1应用案例
- js基础4-应用案例
- js基础5应用案例
- js基础6-应用案例
- js基础7-应用案例
- js基础8-应用案例
- js基础9应用案例
- js基础10-应用案例
- js基础11应用案例
- 一些JS基础应用
- jS事件基础应用
- Node.js的首次应用小案例
- 26 JS基础之--数组API-案例
- 读书笔记_UML基础,案例与应用
- C++语言基础 例程 二进制文件应用案例
- 读《UML基础、案例与应用》有感
- 文件上传-uploadify控件的使用
- ViewPager嵌套ViewPager的冲突解决
- mac下解压bin文件
- Android 网络请求框架对比分析
- 6.1 全局变量
- js基础2应用案例
- [Java]Thread类run()和start()
- Qt creator使用快捷键和自动补全功能的设置
- leecode 解题总结:274. H-Index
- DB2扩大事务日志
- Extjs弹出window窗口后背景窗口变灰(即不可编辑)
- FilenameFilter
- Java进阶-MySql数据库基础入门
- 类的封装继承多态