黑马程序员 dom基础

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

 

 

Javascript—>dom就像  C#-à.Net  Framwork  语言(语法)到 方法(操作)

 

CSS+javascript+dom  就是  DHTML

事件:

1.       直接为某事件调用某个函数

<script type=”text/javascript”>

 

 function bodymousedown(){

alert(“鼠标按下了”);

}

 

</script>

 

<body οnmοusedοwn=”bodymousedown()”> </body>

// 注意此时 bodymousedown后的括号不能丢,,因为这里意思是:onmousedown事件调用 bodymousedown函数,而不是说 onmousedown事件的响应函数就是 bodymousedown函数

 

 2.除了直接给某个事件指定调用某个函数,也可以 动态的为某个事件关联某个响应的函数

 

function f1(){

alert(“1”);

}

   function f2(){

alert(“2”);

}

//意思是当按钮被单击的时候,将doucument.ondblclick这个事件的响应函数设置为f1这个函数

<input  type=”button” value=”关联事件1”  οnclick=”doucument.οndblclick=f1”>

//意思是当按钮被单击的时候,将doucument.ondblclick这个事件的响应函数设置为f2这个函数

<input  type=”button” value=”关联事件2”  οnclick=”doucument.οndblclick=f2”>

 

 

 

常用事件: 

Onload(加载完成)  

onunload(网页关闭后触发) 

onbeforeunload(网页关闭前触发)  

//要想网页关闭前弹出对话框可以这样做

<body οnbefοreunlοad=”window.event.returnValue =’真的要离开吗?’ ”>< /body>

 

 

Onclick    (单击)

 ondblclick    (双击)

onkeydown    (按键按下)

 onkeypress    (点击按键)

  onkeyup    (释放按键)  

onmousedown    (鼠标按下) 

 onmousemove    (鼠标移动)  

onmouseout    (鼠标离开元素范围) 

  onmouseover    (鼠标移动到元素范围内) 

  onmouseup    (鼠标按键释放)

 

 

控件常用属性: value()     disabled(是否可用,设置的时候值为disabled;改变的时候值设置为false)            

display(是否显示,值为truefalse)

 

 

 

 

2. window对象

window对象指的是当前的网页。使用window对象的属性和方法的时候可以省略window,,比如window.alert(“hello”) 可以直接写成alert(“hello”)

 

(1)alert()方法 显示对话框

 

 

(2)confirm()方法,显示确定,取消按钮,选择“确定”返回值是 true,选择“取消”返回值是 false

 function  Doconfirm(){

if(confirm(“是否进入?”)){

   alert(“进入!”);

}

else{

 alert(“取消进入.”);

}

}

 

(3)navigate()    方法,, 导向到另一个页面

 

<input  type=”button”  value=”navigate测试  οnclick=”navigate(‘1.htm’)” /> 

//点击按钮后页面导入到1.htm

 

(4) setInterval()方法 每隔一段时间执行指定的代码,第一个参数为代码段,第2个参数为监控时间(毫秒),他的返回值是 interval 一个 标识  

  clearInterval()方法  取消定时执行的代码

  例子:var  interval = setInterval(“alert(‘’)”,5000);

                    clearInterval(interval);

 

(5)setTimeout()也是定时执行,但他只执行一次

   clearTimeout()也是清除定时。。    

   例子: var  timeout = setTimeout(“alert(‘哈哈’)”,5000);

                            clearTimeout(timeout);

 

(5)parseInt(string,多少进制)   转换为整数

 

 

windows对象属性

(1)    window.localtion.href  =”www.baidu.com导向到新的网页 navigate()方法的效果一样

window.location.reload()方法 刷新页面

(2)    window.event

     window.event是很重要的属性,用来获得事件发生时的信息,事件不局限于window对象的事件,所有的元素的事件都可以通过event属性获得相关信息

event属性下的一些相关 事件信息

A.      altkeyctrlkey,shiftkey  属性  bool类型用来判断相关案件是否被按下

例子:<input  type=”button” value=”点击  οnclick=”if(event.altkey){alert(‘alt键被按下了’);}else{alert(‘alt键没有被按下’);}” />

B.      clientX  clientY  属性事件发生时 鼠标在客户区的坐标;

 screenX   screenY 属性  事件发生时鼠标在屏幕上的坐标;

offsetX  offsetY  属性,事件发生时鼠标在事件源(比如点击按钮时出发click)的坐标

C.      returnValue属性如果将 returnValue属性设为 false,就会取消默认事件的处理. 比如点击超链接后禁止转到另外的页面,表单数据校验的时候禁止提交到服务器

例子:

<a  herf=”www.baidu.com  οnclick=”alert(‘禁止访问!’); window.event.returnValue=false;”  >百度</a>

 

<form   action=”1.aspx”>

<input   type=”submit”  value=”提交  οnclick=”alert(‘数据有问题!’); window.event.returnValue=false;” />

</ form>

D.      srcElement,获得事件源对象,也就是说 发生事件时候是哪个控件

E.       keyCode  发生事件时的按键值

F.       button 发生事件时鼠标按键的值 1为左键,2为右键,3为左右键同时按下

例子:<body  οnmοusedοwn=”if(event.button==2){alert(‘禁止复制’)}”></body>

 

(3)    history操作历史记录的属性

window.history.back()                     后退

window.history.forward()                  前进

window.history.go(-1)                      后退

window.history.go(1)         前进

(4)    document属性  (html页面的文档 )

document方法:

A.write:向文档中 写入内容,writeIn write差不多,多了一个回车

//点击按钮后会写下一个hello,注意 这样子会冲掉原来网页的内容。 只有在页面加载的时候的

//write才不会冲掉,在事件里时候 一般页面都加载完毕了,所以会冲掉原来的内容

<input  type=”button”  value=”点击  οnclick=”document.write(‘hello’)”>

 

write经常在 广告代码,内容整合中用

 

B. getElementById()方法 可以通过控件id找到他的上级控件,页面内的id是唯一的

我们可以通过空间 id的方式访问控件的属性,但是如果这个控件在一个form表单里面,单独的   控件id.属性    不恩那个访问,这个时候需要    form控件id.控件id.属性  来访问,比较麻烦, 我们直接通过getElementById()方法找到上级控件id,例子:

<script  type=”text/javascript”>

   function  printText(){

   var  txt = getElementById(“textbox1”);

      alert(“txt.value”);

}

 </script>

 

<form>

  < input   type=”text”  id=”textbox1”   / >

    <input    type=”button”  value=”打印文本  οnclick=”printText()”  />

</form>

 

        C.  getElementsByName()方法根据元素的Name获得对象,由于页面内的Name可以重复,

       比如多个RadioButtonname一样,所以此方法的返回值是  对象数组

 

     D. getElementsByTagName()方法获得制定标签名称的元素数组,

   比如getElementTagName(“p”)可以获得所有的<p>标签

 

 

3.  screen对象,屏幕的信息

例子:

alert(“分辨率:”+screen.width+”X”+screen.heigth);

if(screen.width<1024||screen.heigth<768)

{

alert(“分辨率太低”);

}

 

4 .clipboardData对象,对粘贴板的操作。

clearData(“Text”);  //清空粘贴板

getData(“Text”); //得到粘贴板的值,返回值为粘贴板中的内容

SetData(“Text”,val); //设置粘贴板的值

 

很多元素也有  oncopy(复制) onpaste(粘贴) 事件,直接return false 就是禁止

例子:

//当复制的时候 bodyoncopy事件触发,直接return false就是禁止粘贴

 <body  οncοpy=”alert(‘禁止复制’);return false;”>

 

 

在很多网站上,为了防止 拷贝党不添加文章来源,我们可以给他们主动添加上:

 function  modifyClipboard(){

clipboardData.setData(‘Text’,clipboardData.getData(‘Text’)+’本文来自传播智客     ’+localtion.href);

}

 

<body οncοpy=”setTimeout(‘modifyClipboard()’,100)”>

//用户复制的动作发生0.1秒后再执行该粘贴板内容的操作  时间自己定

//不能在oncopy中对粘贴板执行操作,因此设定定时器,0.1秒后执行,这样就不在oncopy的执行调用栈上了

 

5.       Date   获取时间

var  now = new Date();

var  hours  =  now.getHours();

var   year  = now.getYear();

 

 

 

 

 

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------
详细请查看:
http://net.itheima.com/

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值