javascript学习笔记

笔记:
===============================================
IE的event的属性
	event.button 按下鼠标键,左键为1,右键通常为2
	event.clientX 事件发生位置的x坐标(列,像素为单位)
	event.clientY  事件发生位置的Y坐标(列,像素为单位)
	event.altkey 是否按下了alt键
	event.ctrlkey
	event.shiftkey
	event.keyCode 所按键码(unicode表示)
	event.srcElement 元素出现的对象
	
Netscape和firefox的event属性
	event.modifiers 表示事件发生时按下那样给修饰键(shift ctrl alt)
					该属性值是一个整数,表示了不同键的二进制的组合。
	event.pageX 事件在网页中x轴坐标
	event.pageY
	event.which 键盘的键码,或是鼠标时间按下的键(最好使用跨浏览器的button属性)
	event.button 按下鼠标键,左键为1,右键通常为2
	event.target 元素出现的对象
	
	注意event.pageX event.pageY指的是鼠标当前元素左上角为基点,并不是鼠标指针实际位置。
	
	
	使用onMouseMove事件
	只要鼠标指针移动,就会发生onMouseMove事件。注意浏览器默认设置并不支持onMouseMove事件
	(生成事件数量非常大)。
	
	onDblClick 双击
	onMouseDown 用户按下鼠标键时
	onMouseUp 用户松开鼠标键时
	
	
	键盘事件:
	在netscape和firefox中,所按的键都会存在event.which属性中; 在ie中,存放在event.keyCode
	formCharCode:把数字式ascii码转换成对应的字符串。
	例如: key = String.formCharCode(event.which);
	
	使用onLoad和onUnload事件
	onLoad:当页面包括所有的图像完成从服务器的加载时,就会发生一件事
	onLoad事件与window对象相关,需要使用标签中的一个事件处理程序来定义他。
	注意在onLoad中不要使用document.write document.open 否则会覆盖当前的文档。
	
	 中定义了onload事件处理程序,当图像加载完毕时,就会触发该事件。
	
	
	onKeyPress和onKeyDown  先执行 onKeyPress 如果返回true,将调用onKeyPress 
	
	window对象:
		window.closed 窗口是否已被关闭,这个属性只适用于多个窗口的情况。
		window.defaultstatus和window.status状态栏默认消息和状态栏临时显示的消息。
		window.frames[]
		window.name:为框架指定名称
		window.opener在脚本打开窗口中,是指包含打开它的脚本窗口。
		window.parent对于框架来说,包含该框架的父窗口。
		window.screen 存储窗口所在屏幕的子对象信息
		window.self 当前window对象的代名词
		window.top使用框架时对顶层窗口的引win用。
		height width  avaiHeight(可用高度)avaiWidth
		
		
		 winObj = window.open("URL","windowName","feature list"); 
		 feature:toolbar location directories status menubar scrollbas resizable
		 
		 
		 window.moveTo把窗口移动到一个新的位置,其参数指定新的x轴y轴
		 window.moveBy相对于当前窗口移动
		 window.resizeTo 把窗口调整指定的宽度和高度
		 window.resizeBy相对与当前窗口调整大小。
	
		window.alert
		window.confirm(message,default)
		window.prompmt(message,default)
		
		检测表单事件:
		focus()设置文本字段的输入焦点
		blur()使焦点离开该字段
		select() 选择字段中的文本
		
		onFocus:在文本字段获得输入焦点时发生
		onBlur:失去焦点时发生
		onSelect:出现在用户选中字段里部分
===================================================================
8.2笔记
	
		charset:指定代码的字符集
		defer:表示脚本可以延迟到文档完全被解析之后执行。(只对外部脚本有效)
			例子:
			一个页面最好只包含一个个延迟脚本,因为它们的执行不一定按照顺序执行。
			一般把延迟脚本放在页面的底部执行。
		language:
		src:
		type:
		
	a.注意在" 如果必须出现最好转义 "<\/script>"
	b.在包含src的script中不要再嵌入javascript代码了,否则嵌入在里面的代码是不会再执行的。
	c.按照惯例所哦有的script都应该放在head中。
	d.当script放在head中时候,需要等到全部的javascript代码都被加载、解析、执行完以后才能
	  呈现页面的内容。这样就会导致页面空白。为了避免解决这个问题,现在我们一般把script放
	  在内容的后面
		
			
			
		
	
	元素
		a.浏览器不支持脚本
		b.浏览器支持脚本,但脚本被禁用。
		例子:
			
		
		所有的javascript都会按照他们在页面出现的顺序,依次被解析。,在不使用 async的情况
		下,只有在解析完前面的script代码才会解析后面的script代码。
		
		由于浏览器会先解析完不使用defer的属性script中的代码,然后解析后面的内容所以一般应
		该把script代码放在页面最后,即主要页面内容后,前面。
		
		使用defer属性可以在页面内容完全呈现后,再执行。延迟脚本总是按照指定的顺序执行。
		
		使用async属性表示当前脚本不必等到其他脚本,也不必等到阻塞文档呈现,不能保证异步
		按照他们出现顺序在页面中出现顺序执行。
		
		---------------------------------------------------------------------------------
		语法:
			区分大小写,函数名不能用typeof
			标识符:指变量、函数、属性的名字,函数参数
			第一个字符必须是 字母、下划线、或者$
			语句结尾的分好不是必须的。
			
			
			functuion t()
			{
				var a = 0;//局部变量
			}
			
			function z()
			{
				a = 0; //全局变量
			}
		----------------------------------------------------------------------
		a.typeof 操作符检测其数据类型,对未初始化操作返回undefined值,而对未声明
		b.的变量执行typeof操作符同样也会返回undfined
		c.只要对象还没有保存真正的对象,就营养确保该地址保存null
		d.isFinite()判断某个数字是否在最大值和最小值之间 true:在 false:不在
		e.NaN非数值,任何涉及NaN的操作都会返回NaN,NaN与任何值都不想等,包括它本身。
		f.isNaN 是否为数字,当接受一个参数时将这个参数试图转换成数字,任何参数不能
		转换成数字,则返回true。
		g.数值转换:

你可能感兴趣的:(javascript学习笔记)