Windows.event

获取鼠标位置

document.getElementById('div').onmousemove = function(e){

   //--------Chrome, firefox 支持-------------------

   document.title=e.clientX+','+e.clientY;

 

   //--------IE支持,chrome 支持----------

    //相对于页面的左上角的坐标

    document.title=window.event.clientX+ ',' +windows.event.clientY;

   //相对于屏幕的左上角的坐标

    document.title=window.event.screenX +','+windows.event.screenY;

    //相对于当前元素的坐标

    document.title=window.event.offsetX+','+windows.event.offsetY;

}

兼容方式

1.利用arguments解决兼容问题

if(arguments.length!=0)
    document.title = argument[0].clientX +','+argument[0].clientY;
else
    document.title = window.event.clientX + ',' +window.event.clientY;

2.能力检测方式 解决兼容问题

if(window.event)
  document.title = windwo.event.clientX + ',' +window.event.clientY;
else
 
document.title = argument[0].clientX +','+argument[0].clientY;

Event属性和方法

 

 
标准 Event 属性

下面列出了 2 级 DOM 事件标准定义的属性。

属性描述
bubbles 返回布尔值,指示事件是否是起泡事件类型。
cancelable 返回布尔值,指示事件是否可拥可取消的默认动作。
currentTarget 返回其事件监听器触发该事件的元素。
eventPhase 返回事件传播的当前阶段。
target 返回触发此事件的元素(事件的目标节点)。
timeStamp 返回事件生成的日期和时间。
type 返回当前 Event 对象表示的事件的名称。
标准 Event 方法

下面列出了 2 级 DOM 事件标准定义的方法。IE 的事件模型不支持这些方法:

方法描述
initEvent() 初始化新创建的 Event 对象的属性。
preventDefault() 通知浏览器不要执行与事件关联的默认动作。
stopPropagation() 不再派发事件。
 

 

window.event.cancelBubble = true; 取消事件冒泡

取消默认事件

 

1.啥叫取消默认事件? 

先看一段伪码

function(){

   if("密码格式错误"){

        alert("密码格式错误!");

        取消默认事件

   }     

}     什么叫取消默认行为呢?换句话说,如果就是在连接上 阻止浏览器执行连接转移到新的地址,如果在表单上用,就是阻止表单提交。

 

2.具体做法

在没有使用事件监听器时,(直接把事件处理绑定到元素上)。

可以直接return false;   就可以取消默认事件。

 

对于使用事件监听器,addListener(document.getElementById("frm"),'submit',方法名);

就提供了另一种函数  preventDefault();

ie下

window.event.returnValue = false;

 

获取用户按键

document.getElementById('dv').onmousedown=function(){

if(window.event.altKey){

       按下了alt键;

}else if(window.event.shiftKey){

      按下了shift键

}else if(window.event.ctrlKey){

      按下了ctrl键

}else{

      仅按下了鼠标

}

}

posted @ 2015-02-28 10:27  大黑兔  阅读(866)  评论(0编辑  收藏  举报