zoukankan      html  css  js  c++  java
  • JS 基础知识之传智播客2

    1.BOM的概述
        browser object modal :浏览器对象模型。
        浏览器对象:window对象。
        Window 对象会在 <body> 或 <frameset> 每次出现时被自动创建。
    	Window 顶级父类-->   子:history location  Navigator screen 
    
    2. window的属性
         innerHeight: 文档显示区的高度,不包括工具栏 菜单栏等高度
         innerWidth:  IE不支持 不包括滚动条
    		通用写法:var x =window.document.body.clientWidth //文档显示区的宽度
    	              var y = document.body.clientHeight//文档显示区的高度
    	
    	outerheight: var x =window.document.body.outerheight;
    	outer  var y =window.document.body.outerwidth;
    	
    	self :等同于window对象
    	 parent:是打开窗口的父窗口对象,重要
    	 opener:是打开窗口的父窗口对象,重要
    			2种情况下使用opener:
    				   1.使用winodw.open()方法打开的页面
    				   2.超链(里面的target属性要设置成_blank)
    			2种情况下使用parent:
    				   1.iframe 框架
    				   2.frame 框架
    	 frames[]: 数组类型,代表子窗口的window对象的集合,可以通过frames[索引]拿到子窗口的window对象。
    		示例:父子窗口相互传参.
         
        open方法,是打开一个页面.
    
    
        对话框:
             1)消息框 alert() ;
             2)确认框 confirm() ;
             3)输入框 prompt() ; (了解)
    
        定时器:
           setTimeout ,setInterval
    	     定时器: 1.setTimeout() :只会调用1次
    				  2.setInterval() :每隔一段时间调用1次
     
    3. history对象
         a.  forward()前进
    	 b.  back() 后退
    	 c.  go(n) 正数是前进,负数是后退.
    
    4. location对象。
            1.href 属性: 是指要连接到其他的URL
    						写法一、window.location.href='demo_window对象的close方法.html' ;
    						写法二、window.location='demo_window对象的close方法.html' ;
    
    		2.reload方法: 刷新
    			写法: window.location.reload() ;
    
    5.常用事件
    	* 事件(掌握,明白每个事件发生的时机)
    		鼠标移动事件
    		* onmousemove(event) : 鼠标移动事件 event是事件对象。名字固定 
    		* onmouseover : 鼠标悬停事件
    			鼠标悬停事件: 当鼠标移动到某个控件上面的时候发生
    				this: 把this写在那个标签里面就代表那个标签对象
    				this.style.backgroundColor : 当调用样式表中的属性的时候,如果属性中间有横杠,则应去掉.
    			
    			 示例: 当鼠标移动到p标签上的时候,p标签改变样式  (参见demo01_鼠标悬停事件.html)
    		* onmouseout : 鼠标移出事件
    			鼠标移开事件: 当鼠标从控件上移开的时候
    			示例参见(demo_02_鼠标移开事件.html ;
    			
        * 鼠标点击事件
    		onclick : 当鼠标单击某个控件时发生
    			示例: 当单击按钮时,在<p>中显示字符串 "冠希哥来了" 参见(demo03_鼠标单击事件.html)
    <script>
    	function init(){
    		btn1.onclick=function (){//给btn1按钮注册一个点击事件
    			var img = document.getElementById("img");
    			img.style.display="none";
    			this.disabled="true";//将按钮设置为不可点击,灰色,this代表btn1
    		}
    		btn2.onclick=function (){
    			var img = document.getElementById("img");
    			img.style.display="block";//调用css的样式 用style 或直接用属性
    			var btn1 = document.getElementById("btn1");
    			btn1.removeAttribute("disabled");//删除btn1的属性
    		}
    		function fun(obj){obj.value ="新浪";}
    		
    		function add(){
    			var add = document.getElementById("add");
    			//调用html,用innerHtml
    			add.innerHTML="<img src='images/img1.jpg' width='200' height='200'>";
    		}
    		function remove(){
    			var btn3 = document.getElementById("btn3");
    			btn3.removeAttribute("onclick");
    		}
    	}
    </script>
    </head>
    <body onload="init()">
        <img src="images/img1.jpg"  id="img">
        <input type="button" id="btn1" value="隐藏图片">
        <input type="button" id="btn2" value="显示图片">
    	<input type="button" id="btn3" value="搜狐" onclick="fun(this)">//this==<input>
    	<input type="button" id="btn4" value="添加一副图片" onclick="add()">
    	<input type="button" id="btn5" value="去除搜狐按钮的点击事件" onclick="remove()">
        <p id="add"></p>
    </body>	
    			
    	* 加载与卸载事件 
    		onload ,onunload
    			加载事件(onload) : 在整个页面的元素加载完毕之后发生,body加载完毕之后调用
    			<body onload="fun(),fun1(),fun3()"></body> onload可以调用多个函数
    			只能写在 img ,layer 和body中;
    			
    			卸载事件(onunload) : 用于页面关闭时发送某些信息给服务器
    			  注意: onload和onunload事件必须写在body或者图片标签里面
    			  示例参见(demo04_加载卸载事件.html)
    		
    	* 聚焦与离焦事件
    		onfocus, onblur
    			聚焦事件:是在控件获得焦点的时候发生
    			离焦事件:是在控件失去焦点的时候发生
    
    			示例: 文本框获得焦点的时候改变样式,失去焦点时变回原样(参见demo05_聚焦离焦事件.html)
    	
    <script>
    	function fun(obj){
    	   obj.style.border="1px solid red";
    	   obj.style.background="black";
    	   obj.style.color="white";
    	}
    
    	function fun1(obj){
    		if(obj.value==""){
    			alert("内容不得为空");
    			obj.focus();//让焦点回到input框中
    		}
    	}
    </script>
    </head>
    <body>
        <input type="text" name="" value="" onfocus="fun(this)" onblur="fun1(this)"><br><br><br>
        <input type="text" >
    </body>	
    	
    	* 键盘事件
    		onkeypress,onkeyup,onkeydown
    			onkeypress: 按下键盘按键并松开
    			onkeydown : 按下按键发生
    			onkeyup: 松开按键
    			
    			示例参见(demo06_键盘事件.html`)
    <script>
    	function fun(obj,e){
    		obj.value= e.keyCode;//65A 97a 拿到按键的asc码
    	}
    </script>
    </head>
    <body>
    	//event对象 能拿到事件的状态等信息
        <input type="text" name="" onkeypress="fun(this,event)" onkeydown="" onkeyup="">
    </body>
    			
    	* 提交与重置事件 :提交 是把前台的数据提交到服务器
    		onsubmit,onreset
    		提交事件: 是在点击提交按钮后发生。(必须写在form表单中)
    		提交流程:点击submit按钮-->check(this)方法,如果返回为true,提交表单数据到服务器,跳转页面,反之光标重回到输入框且弹出提示...
    		
    		重置事件: 是在点重置交按钮后发生。
    
    		示例: 提交表单中的数据(检查):如果是陈冠希:通过,否则不能提交数据(参见demo07_提交重置事件.html)
    <script>
    	function check(form){
    	   var txt= form.username.value;
    		if(txt ==""){
    			document.getElementById("sname").innerHTML="<font color='red'>*名字不能为空</font>";//只有input标签才有value,其他用innerHtml
    			form.username.focus();//光标重新回到输入框
    			return false;//必须要有boolean返回值
    		}
    		return true;
    	}
    
    	function funreset(form){
    		var txt= form.username.value;
    		if(form.username.value !=""){//有数据才清空
    			return true;
    		}
    			return false;
    	}
    </script>
    <body>
    <form action="ting.html" method="post" onsubmit="return check(this)" onreset="funreset(this);">
        <input type="text" name="username" value=""><span id="sname"></span>
        <input type="submit" value="提交按钮">
        <input type="reset" value="重置按钮">
    </form>
    </body>
    			
    	* 选择与改变事件
    	    onselect:
    		onchange:
    		
    		onselect: 只能用于输入框. 当选择输入框中的文本时发生
    		onchange: 用于select和文本框.
    					对于下拉框是在选项发生变化的时候发生
    					对于文本框是在文本框的内容发生变化并且失去焦点时发生
    
    			示例: 当选择文本框的内容时,弹出文本框的内容
    			下拉框的selectedIndex属性:代表选中某项的索引 
    		
    <script>
    	function fun(obj){
    		alert(obj.value);//输入什么显示什么
    	}
    
    	function fun1(value){
    		alert(value);//传递过来的是value 直接显示
    	}
    
    	function fun2(v,index){
    		alert(v+":"+index);//选中美国,弹出的是usa:1
    	}
    
    </script>
    </head>
    <body>
        <input type="text" name="" onselect="fun(this)" onchange="fun1(this.value)">
        <select onchange="fun2(this.value,this.selectedIndex)">
            <option value="china">中国</option>
            <option value="usa">美国</option>
            <option value="japan">小日本</option>
        </select>
    </body>
    

      

  • 相关阅读:
    点击Notification之后收起通知栏
    Visual Studio常用的快捷键
    数据库语法二之外键
    数据引擎 创建表完整语法,字段类型,约束条件
    数据库 tcp协程实现并发 回调函数
    GIL以及协程
    进程,互斥锁,生产者消费者,线程
    udp协议,进程(同步,异步)
    单例模式,网络编程之tcp协议以及粘包问题
    网络编程
  • 原文地址:https://www.cnblogs.com/bravolove/p/5500084.html
Copyright © 2011-2022 走看看