9、对象【重点熟练应用】
1、 Window窗口对象
属性 |
主要属性:Name ,Length ,Parent ,Self ,Top ,Status ,Default Status , Opener ,Closed |
Left 窗口左坐标,不能为负; Top 窗口上坐标,不能为负; Height 窗口高度 ,不能小于100; Width 窗口宽度,不能小于100; Resizable 能否拖动边线调整大小,默认no; Scrollable 可视窗口容不下要显示的内容,是否允许滚动,默认no; Toolbar 是否显示工具栏,默认no; Status 是否显示状态栏,默认no; Location 是否显示web地址栏,默认no; Default Status 和 Status 属性都是在窗口中使用,在窗口的状态条上显示状态信息。 Default Status 是设置显示默认的状态栏信息;Status 是当一个事件执行时显示状态信息。 |
|
方法 |
open() :打开一个新的窗口;如下: window.open(url, null,"height=100,width=100,status=yes,toolbar=no,menuba=no,location=no") 系统对话框:alert 、promp 、confirm alert() :弹出一个提示对话框; prompt() : confirm(“ ”) :自定消息框信息,弹出一个可供选择“确定”和“取消”对话框; setTimeout() :设置时间间隔和暂停; showModalDialog() :创建对话框,只有一个close()方法; focus() :捕获焦点的位置 |
2、 document对象
属性 |
主要属性:alinkColor bgColor cookie domain embeds fgColor layers linkColor location title URL vlinkColor |
alinkColor :激活链接的颜色; bgColor :改变页面的背景颜色; fgColor :页面文本的颜色; lastModified :最后修改页面的日期,是字符串; linkColor :链接的颜色; referrer :浏览器历史中后退一个位置的URL ; title : URL :当前载入的页面的URL; vlinkColor :访问过的链接的颜色;
applets :页面中所有applets的集合; embeds :页面中所有嵌入式对象的集合() cookie :一段字符串信息值; images :页面中所有图像的集合; forms :页面中所有表单的集合,定位表单对象和元素 |
|
方法 |
Write() Writen() :换行(回车) Close() :关闭窗口 getSelection() :捕获用户浏览页面的文本 |
3、文本对象
属性 |
defaultValue form name type value defaultValue :设置缺省值 name :文本对象名称 value : |
方法 |
Focus() :聚焦,将光标放置在文本对象的文本的开始处; Select() :选定文本对象中的文本; |
事件 |
onChange() |
文本域对象 |
|
4、按钮对象
|
button 按钮 submit 提交 reset 复位 复选框对象:checked defaultChecked name value Radio对象:name value |
|
|
5、选择和隐藏对象
|
Select 对象 |
|
Hidden |
6、 location对象(表示载入窗口的URL)
属性 |
hash属性:调整web在浏览器的位置;如果URL中包含#,该方法将返回该符号之后的内容; host :服务器的名字; hostname :通常等于host,可以省略www; href 属性:当前载入页面的完整的URL,超文本对象引用 pathname 属性:URL中主机后的部分,反斜杠(/); port :URL中声明的请求的端口; protocol 属性:通信协议(//) search :执行get请求的URL中的问号;又称查询字符串; |
方法 |
reload () :重新载入当前页面: 从浏览器缓存中重载(false):location.load(false) 从服务器端重载(true):location.load(true) |
Location对象是window对象和document对象的属性,所以window.location和document.location互相等价,可以交换使用。 |
7、 history对象
属性 |
length |
方法 |
back() forward() go() :windows.history.go(-1);后退一页 |
8、 layer对象
属性 |
above below siblingAbove siblingBelow background 层背景图 clip 属性:top left bottom right width height left top name src
|
方法 |
Load(“url” , newlayerWidth) moveAbove() moveBelw() |
9、字符串对象
转义字符 ' \" 双引号' " \' 单引号" "\\ 反斜杠" "\b 退格" "\t TAB" " \n 换行" "\r 回车" "\f 进格" |
|
属性 |
string.length 字符串的长度 |
方法 |
+ :字符串连接; charAt :string.charat(index) 从字符串中返回某个字符;index参数是用来获取字符的位置; indexOf :string.indexOf(string,index) 从一个特定的位置开始查找设置的字符; lastIndexOf :从字符串尾部开始检索; substring :string.substring(index1,index2) 字符串截取,截取结果包括较小的字符串位置; toLowerCase :大写转换小写字符,先调用这个方法,再输出; toUpperCase :小写转换大写字符; anchor :string.anchor(anchorname) 创建和显示一个html超文本目标,必须现在html建立锚点; big :设置字体变大; bold :设置字体变粗; fontsize :设置字体的大小; 。。。。。 |
10、日期对象
属性 |
New 创建新日期对象; |
方法 |
getYear 年 getMonth 月 设置转换,将获得的值加1; getDate 日 getDay 星期 设置当期日期的星期数,返回整数值 getHours 小时 getMinutes 分钟 getSeconds 秒数 = = = setYear/ Month/Month/Date/Day/Hours/Minutes/Seconds = = = getTimezoneOffset 返回时间差 toGMTString 将日期对象转换为一个字符串,格式:星期、月、日、年、时、分、秒 toLocaleString 将日期对象转换为本地日期格式,显示格式依赖于系统平台。
|
11、数学对象
属性 |
Math.E 欧拉常数,是自然对数的底数,数值为:2.71828 |
方法 |
abs 求绝对值 Math.abs(参数) acos 求反余弦函数值 Math.acos(参数) max 比较大小函数 Math.max(参数1,参数2),返回最大的值 round 四舍五入 Math.round(参数) ,逢五进一 floor 舍去小数部分取整 Math.floor(参数) ceil 求平均值,求大于或等于值 Math.ceil(参数) random 产生0和1之间的随机数 Math.random()
|
12、数组对象
属性 |
|
方法 |
|
数组对象的创建—数组扩充:示例
function student(name,age){ this.name = name; this.age = age; } stu1 = new student(“刘德华”,50); document.write(stu1.name); document.write(stu1.age);
|
|
对象类数组: var a = new Array(2); a[0]=0; a[1]=1; document.write(a[0]); document.write(a[1]); |
13、 navigator对象
用于判断浏览器页面采用的哪种浏览器
属性/方法 |
参照IE浏览器输出 |
document.write(navigator.appCodeName); 浏览器代码名称 |
Mozilla |
document.write(navigator.appMinorVersion); 额外版本信息 |
0 |
document.write(navigator.appName); 官方浏览器名称 |
Microsoft Internet Explorer |
document.write(navigator.appVersion);
浏览器版本信息 |
4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727) |
document.write(navigator.browserLanguage); 浏览器或操作系统语言 |
zh-cn |
document.write(navigator.cookieEnabled); 是否启用了cookie的blooean值 |
true |
document.write(navigator.cpuClass); Cpu类别 |
x86 |
document.write(navigator.javaEnabled()); 是否启用了java的boolean值 |
true |
document.write(navigator.language); 浏览器语言 |
Undefined (IE不支持) |
document.write(navigator.mimeTypes); 注册到浏览器的mime类型数组 |
Undefined (IE不支持) |
document.write(navigator.onLine); 是否连接到Internet |
true |
document.write(navigator.oscpu); 操作系统或CPU |
Undefined (IE不支持) |
document.write(navigator.platform); 运行浏览器的计算机平台 |
Win32 |
document.write(navigator.plugins); 安装在浏览器中插件的数组 |
[object] |
document.write(navigator.product); 产品名 |
Undefined (IE不支持) |
document.write(navigator.productSub); 产品的额外信息 |
Undefined (IE不支持) |
document.write(navigator.opsProfile); |
Null (IE不支持) |
document.write(navigator.securityPolicy); |
Undefined (IE不支持) |
document.write(navigator.systemLanguage); 操作系统语言 |
zh-cn |
document.write(navigator.taintEnabled()); 是否启用数据感染的Boolean值 |
false |
document.write(navigator.userAgent);
用户代理 |
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR2.0.50727) |
document.write(navigator.userLanguage); 操作系统语言 |
zh-cn |
document.write(navigator.userProfile); 允许访问浏览器用户档案的对象 |
null |
document.write(navigator.vendor); 品牌浏览器名称 |
Undefined (IE不支持) |
document.write(navigator.vendorSub); 品牌浏览器的额外信息 |
Undefined (IE不支持) |
14、 screen对象
用于获取用户屏幕的信息
属性 |
availHeight :窗口使用的屏幕的高度; availWidth :窗口使用的屏幕的宽度; colorDepth :用户使用的颜色数; height :屏幕的高度; width :屏幕的宽度 |
10、 DOM
DOM是“Document Object Model”(文档对象模型)的首字母缩写
1)访问节点:
访问html元素:var oHtml=document.documentElement;
获取head元素:varoHead=oHtml.firstChild;
获取body元素:varoBody=oHtml.lastChild; 或者 var oBody=document.body;
2)检测节点类型
通过节点的nodeType属性来检验节点类型:
alert(document.nodeType); //输出9
各常量名称与数值对照表如下:
ELEMENT_NODE 1
ATTRIBUTE_NODE 2
TEXT_NODE 3
CDATA_SECTION_NODE 4
ENTITY_REFERENCE_NODE 5
ENTITY_NODE 6
PROCESSING_INSTRCTION_NODE 7
COMMENT_NODE 8
DOCUMENT_NODE 9
DOCUMENT_TYPE_NODE 10
DOCUMENT_FRAGMENT_NODE 11
NOTATION_NODE 12
3)访问指定节点
1、 getElementsByTagName()获取标签名
2、 getElementsByName() 获取name特性等于指定值的元素;获取标签的名称
var d =document.getElementsByName("redColor");
document.write(d[0].getAttribute("value"));
3、 getElementById() 返回id特性等于指定的元素;
4)创建和操作节点:
一张IE(6.0)和FF对DOM Level1的创建新节点方法支持的对照表:
方法 IE FF
createAttribute(name) Y Y
createCDATASection(text) N Y
createComment(text) Y Y
createDocumentFragment() Y Y
createElement(tagName) Y Y
createEntityReference(name) N Y
createProcessingInstruction(target,data) Y N
createTextNode(text) Y Y
createElement() 创建标签元素
createTextNode() 创建文本节点
appendChild() 把文本节点追加到标签元素中
removeChild() 删除节点
replaceChild() 替换节点
insertBefore() 插入节点
注意:replaceChild和insertBefore两个参数都是新节点在前,旧节点在后。
5)Table方法
6)遍历DOM
NodeIterator
TreeWalker
11、事件
冒泡型事件:从最特定的事件目标到最不特定的事件目标的顺序触发;
捕获型事件:从最不确定的对象触发,然后到最精确;
事件处理函数/监听函数:
Click 点击 load 载入 mouseover 鼠标经过
用于相应某个事件而调用的函数称为事件处理函数;
事件处理函数必须为小写,才能正确响应事件;
attacheEvent 函数:事件处理函数添加;
detachEvent 函数:在事件处理函数中查找指定的函数,并移除它;
DOM addEventListener() :分配事件处理函数;
DOM removeEventListener() :移除事件处理函数
DOM 方法必须三个参数:事件名称,要分配的函数,处理函数的冒泡阶段和捕获阶段,如果是用在捕获阶段,第三个参数为true;用于冒泡阶段,则为false;
事件类型(不在展开描述,掌握鼠标事件即可,其他的可参考js内置对象):
鼠标事件
键盘事件
Html事件
变化事件
跨平台事件
表单事件:
访问表单字段(id):document.getElementById()
聚焦:forcus()
提交表单:submit()
重置表单:reset()
选择文本:select()
自动切换到下一个输入框:tabForward()
限制textarea的字符数:isNotMax()
禁止粘贴:onpaste
创建自动提示的文本框
12 拖放
拖放事件:
dragstart
drag
dragend
放置鼠标事件:
dragenter ——dragover ——dragleave——drop
数据传输对象:dataTransfer
getData() 获取 setData() 存储的值
dropEffect
effectAllowed
dragDrop()方法:初始化系统拖放事件
zDragDrop模拟拖放过程对象,需要下载zdragdroplib.js包
附:鼠标事件
一般事件 |
||
事件 |
浏览器支持 |
描述 |
onClick |
HTML: 2 | 3 | 3.2 | 4 |
鼠标点击事件,多用在某个对象控制的范围内的鼠标点击 |
onDblClick |
HTML: 2 | 3 | 3.2 | 4 |
鼠标双击事件 |
onMouseDown |
HTML: 2 | 3 | 3.2 | 4 |
鼠标上的按钮被按下了 |
onMouseUp |
HTML: 2 | 3 | 3.2 | 4 |
鼠标按下后,松开时激发的事件 |
onMouseOver |
HTML: 2 | 3 | 3.2 | 4 |
当鼠标移动到某对象范围的上方时触发的事件 |
onMouseMove |
HTML: 2 | 3 | 3.2 | 4 |
鼠标移动时触发的事件 |
onMouseOut |
HTML: 2 | 3 | 3.2 | 4 |
当鼠标离开某对象范围时触发的事件 |
onKeyPress |
HTML: 2 | 3 | 3.2 | 4 |
当键盘上的某个键被按下并且释放时触发的事件.[注意:页面内必须有被聚焦的对象] |
onKeyDown |
HTML: 2 | 3 | 3.2 | 4 |
当键盘上某个按键被按下时触发的事件[注意:页面内必须有被聚焦的对象] |
onKeyUp |
HTML: 2 | 3 | 3.2 | 4 |
当键盘上某个按键被按放开时触发的事件[注意:页面内必须有被聚焦的对象] |
页面相关事件 |
||
事件 |
浏览器支持 |
描述 |
onAbort |
HTML: 2 | 3 | 3.2 | 4 |
图片在下载时被用户中断 |
onBeforeUnload |
HTML: 2 | 3 | 3.2 | 4 |
当前页面的内容将要被改变时触发的事件 |
onError |
HTML: 2 | 3 | 3.2 | 4 |
捕抓当前页面因为某种原因而出现的错误,如脚本错误与外部数据引用的错误 |
onLoad |
HTML: 2 | 3 | 3.2 | 4 |
页面内空完成传送到浏览器时触发的事件,包括外部文件引入完成 |
onMove |
HTML: 2 | 3 | 3.2 | 4 |
浏览器的窗口被移动时触发的事件 |
onResize |
HTML: 2 | 3 | 3.2 | 4 |
当浏览器的窗口大小被改变时触发的事件 |
onScroll |
HTML: 2 | 3 | 3.2 | 4 |
浏览器的滚动条位置发生变化时触发的事件 |
onStop |
HTML: 2 | 3 | 3.2 | 4 |
浏览器的停止按钮被按下时触发的事件或者正在下载的文件被中断 |
onUnload |
HTML: 2 | 3 | 3.2 | 4 |
当前页面将被改变时触发的事件 |
表单相关事件 |
||
事件 |
浏览器支持 |
描述 |
onBlur |
HTML: 2 | 3 | 3.2 | 4 |
当前元素失去焦点时触发的事件 [鼠标与键盘的触发均可] |
onChange |
HTML: 2 | 3 | 3.2 | 4 |
当前元素失去焦点并且元素的内容发生改变而触发的事件 [鼠标与键盘的触发均可] |
onFocus |
HTML: 2 | 3 | 3.2 | 4 |
当某个元素获得焦点时触发的事件 |
onReset |
HTML: 2 | 3 | 3.2 | 4 |
当表单中RESET的属性被激发时触发的事件 |
onSubmit |
HTML: 2 | 3 | 3.2 | 4 |
一个表单被递交时触发的事件 |
滚动字幕事件 |
||
事件 |
浏览器支持 |
描述 |
onBounce |
HTML: 2 | 3 | 3.2 | 4 |
在Marquee内的内容移动至Marquee显示范围之外时触发的事件 |
onFinish |
HTML: 2 | 3 | 3.2 | 4 |
当Marquee元素完成需要显示的内容后触发的事件 |
onStart |
HTML: 2 | 3 | 3.2 | 4 |
当Marquee元素开始显示内容时触发的事件 |
编辑事件 |
||
事件 |
浏览器支持 |
描述 |
onBeforeCopy |
HTML: 2 | 3 | 3.2 | 4 |
当页面当前的被选择内容将要复制到浏览者系统的剪贴板前触发的事件 |
onBeforeCut |
HTML: 2 | 3 | 3.2 | 4 |
当页面中的一部分或者全部的内容将被移离当前页面[剪贴]并移动到浏览者的系统剪贴板时触发的事件 |
onBeforeEditFocus |
HTML: 2 | 3 | 3.2 | 4 |
当前元素将要进入编辑状态 |
onBeforePaste |
HTML: 2 | 3 | 3.2 | 4 |
内容将要从浏览者的系统剪贴板传送[粘贴]到页面中时触发的事件 |
onBeforeUpdate |
HTML: 2 | 3 | 3.2 | 4 |
当浏览者粘贴系统剪贴板中的内容时通知目标对象 |
onContextMenu |
HTML: 2 | 3 | 3.2 | 4 |
当浏览者按下鼠标右键出现菜单时或者通过键盘的按键触发页面菜单时触发的事件 [试试在页面中的 中加入onContentMenu="return false"就可禁止使用鼠标右键了] |
onCopy |
HTML: 2 | 3 | 3.2 | 4 |
当页面当前的被选择内容被复制后触发的事件 |
onCut |
HTML: 2 | 3 | 3.2 | 4 |
当页面当前的被选择内容被剪切时触发的事件 |
onDrag |
HTML: 2 | 3 | 3.2 | 4 |
当某个对象被拖动时触发的事件 [活动事件] |
onDragDrop |
HTML: 2 | 3 | 3.2 | 4 |
一个外部对象被鼠标拖进当前窗口或者帧 |
onDragEnd |
HTML: 2 | 3 | 3.2 | 4 |
当鼠标拖动结束时触发的事件,即鼠标的按钮被释放了 |
onDragEnter |
HTML: 2 | 3 | 3.2 | 4 |
当对象被鼠标拖动的对象进入其容器范围内时触发的事件 |
onDragLeave |
HTML: 2 | 3 | 3.2 | 4 |
当对象被鼠标拖动的对象离开其容器范围内时触发的事件 |
onDragOver |
HTML: 2 | 3 | 3.2 | 4 |
当某被拖动的对象在另一对象容器范围内拖动时触发的事件 [活动事件] |
onDragStart |
HTML: 2 | 3 | 3.2 | 4 |
当某对象将被拖动时触发的事件 |
onDrop |
HTML: 2 | 3 | 3.2 | 4 |
在一个拖动过程中,释放鼠标键时触发的事件 |
onLoseCapture |
HTML: 2 | 3 | 3.2 | 4 |
当元素失去鼠标移动所形成的选择焦点时触发的事件 |
onPaste |
HTML: 2 | 3 | 3.2 | 4 |
当内容被粘贴时触发的事件 |
onSelect |
HTML: 2 | 3 | 3.2 | 4 |
当文本内容被选择时的事件 |
onSelectStart |
HTML: 2 | 3 | 3.2 | 4 |
当文本内容选择将开始发生时触发的事件 |
数据绑定 |
||
事件 |
浏览器支持 |
描述 |
onAfterUpdate |
HTML: 2 | 3 | 3.2 | 4 |
当数据完成由数据源到对象的传送时触发的事件 |
onCellChange |
HTML: 2 | 3 | 3.2 | 4 |
当数据来源发生变化时 |
onDataAvailable |
HTML: 2 | 3 | 3.2 | 4 |
当数据接收完成时触发事件 |
onDatasetChanged |
HTML: 2 | 3 | 3.2 | 4 |
数据在数据源发生变化时触发的事件 |
onDatasetComplete |
HTML: 2 | 3 | 3.2 | 4 |
当来子数据源的全部有效数据读取完毕时触发的事件 |
onErrorUpdate |
HTML: 2 | 3 | 3.2 | 4 |
当使用onBeforeUpdate事件触发取消了数据传送时,代替onAfterUpdate事件 |
onRowEnter |
HTML: 2 | 3 | 3.2 | 4 |
当前数据源的数据发生变化并且有新的有效数据时触发的事件 |
onRowExit |
HTML: 2 | 3 | 3.2 | 4 |
当前数据源的数据将要发生变化时触发的事件 |
onRowsDelete |
HTML: 2 | 3 | 3.2 | 4 |
当前数据记录将被删除时触发的事件 |
onRowsInserted |
HTML: 2 | 3 | 3.2 | 4 |
当前数据源将要插入新数据记录时触发的事件 |
外部事件 |
||
事件 |
浏览器支持 |
描述 |
onAfterPrint |
HTML: 2 | 3 | 3.2 | 4 |
当文档被打印后触发的事件 |
onBeforePrint |
HTML: 2 | 3 | 3.2 | 4 |
当文档即将打印时触发的事件 |
onFilterChange |
HTML: 2 | 3 | 3.2 | 4 |
当某个对象的滤镜效果发生变化时触发的事件 |
onHelp |
HTML: 2 | 3 | 3.2 | 4 |
当浏览者按下F1或者浏览器的帮助选择时触发的事件 |
onPropertyChange |
HTML: 2 | 3 | 3.2 | 4 |
当对象的属性之一发生变化时触发的事件 |
onReadyStateChange |
HTML: 2 | 3 | 3.2 | 4 |
当对象的初始化属性值发生变化时触发 |