胖在一方

出得厅堂入得厨房的胖子

导航

Javascript(二十一)IE与DOM事件的相似性

Posted on 2008-05-17 11:53  胖在一方  阅读(599)  评论(0)    收藏  举报
IE 和 DOM 事件的相似形
    1、获取事件类型 可以在任意一种游览器上获取事件的类型 var sType=oEvent.type; 他返回类似"click"或者"mouseover"之类的值,当某个函数同时为两个事件的处理函数时,可以区分 。
 
        function handler(oEvent)
        {
            
if (sType=="click"
)
            {
                .
            }
            
else if (sType=="mouseover"
)
            {
                ..
            }
        }
        oDiv.onclick
=
handler;
        oDiv.mouseover
=handler;

    2 、获取按键代码 在keydown 和keyup事件中,可以使用keyCode属性来获取按下键盘的数值代码:
    var ikeyCode= event.keyCode

    3、检测Shift,Alt,Ctrl键
            var iShift = event.shiftKey;
            
var iAlt =
event.altKey;
            
var iCtrl=event.ctrlKey;    

    4、获取客户端坐标
            var iClientX=oEvent.clientX;
            
var iClientY=oEvent.clientY;
    客户端区域是显示网页的窗口部分。这些属性描述鼠标离ie窗口的边界有多远
 
5、获取屏幕坐标
    在鼠标时间中可以用screenX和screenY属性来获取鼠标指针在计算机屏幕中的位置
            var iScreenX= oEvent.screenX;
            
var iScreenY= eEvent.screenY;

IE属性/方法
        ---------------------------------------------------------------------------------------
        特性
/方法            类型        可读/可写        描述
        
---------------------------------------------------------------------------------------

        altKey                
boolean        R/W            true表示按下alt键,false表示没有
        button                Integer        R/W            对于特定的鼠标事件,表示鼠标按钮
                                                    This property is used with the onmousedown, onmouseup, and onmousemove events. 
                                                    For other events, it defaults to 
0
 regardless of the state of the mouse buttons. 
                                                            
0
:未按键
                                                            
1
:左键
                                                            
2
:右键
                                                            
3
:同时按下左右键
                                                            
4
:按下中键
                                                            
5
:按下左键和中键
                                                            
6
:按下右键和中键
                                                            
7
:同时按下左中右键
                                                            
        cancelBubble        
boolean        R/W            设置为true,将会停止事件向上冒泡

        clientX                interger    R/W            事件发生时,鼠标在客户端区域(不包含工具栏,滚动条等)的x坐标
        clientY                interger    R/W            事件发生时,鼠标在客户端区域(不包含工具栏,滚动条等)的y坐标
        ctrlKey                boolean        R/W            true表示按下ctrl键,false表示没有按下
        fromElement            Element        R/W            某些鼠标事件中,鼠标离开的元素
        keyCode                interger    R/W            对于keypress事件,表示按下按钮的unicode字符,对于keyDown/keyUp事件
                                                    ,表示按下按钮的数字代号
        offsetX                integer        R
/W            鼠标相对于引起事件的对象的x坐标,

                                                    如在div中单击,offsetX就是鼠标距离div边界的坐标
        offsetY                integer        R
/W            鼠标相对于引起事件的对象的y坐标

                                                    如在div中单击,offsetX就是鼠标距离div边界的坐标
                                                    
        repeat                Boolean        R            如果不断触发keyDown事件则为true,否则为false
        returnValue            Boolean        R
/W            设置为false可以取消事件的默认动作

        screenX                integer        R/W            相对于整个屏幕的鼠标的x坐标
                                                    如在div中单击,就是显示鼠标距离屏幕的边界的坐标
                                                    
        screenY                integer        R
/W            相对于整个屏幕的鼠标的y坐标

                                                    如在div中单击,就是显示鼠标距离屏幕的边界的坐标
                                                    
        shiftKey            Boolean        R
/W            true表示按下shift键,否则为false

        srcElement            Element        R/W            引起事件的元素
        toElement            Element        R/W            在鼠标事件中,鼠标正在进入的元素
        type                string        R/W            事件的名称
        x                    Interger    R/W            鼠标相对于引起事件的元素的父元素的x坐标
                                                    鼠标距离页面(去除菜单栏,工具栏,滚动条等)的距离
                                                    在div单击,显示的是鼠标距离页面的坐标
                                                    貌似与clientX的值相同
        y                    Integer        R
/W            鼠标相对于引起事件的元素的父元素的y坐标

    


DOM事件对象包含了相似的核心属性和方法,但也有很大的不同
            
-----------------------------------------------------------------------------------------

            特性
/方法            类型        可读/可写        描述
            
-----------------------------------------------------------------------------------------

            altKey                Boolean            R
/W            true表示按下alt键盘
            bubbles                Boolean            R            表示事件是否在冒泡阶段
            button                Integer            R
/W            对于特定的鼠标事件,表示鼠标按下的按钮

                                                            0:未按键
                                                            
1
:左键
                                                            
2
:右键
                                                            
3
:同时按下左右键
                                                            
4
:按下中键
                                                            
5
:按下左键和中键
                                                            
6
:按下右键和中键
                                                            
7
:同时按下左中右键
            cancelable            Boolean            R            表示事件能否能取消
            cancelBubble        Boolean            R            表示事件的冒泡是否已被取消
            charCode            Integer            R            按下按键的Unicode值
            clientX                Integer            R            事件发生时,鼠标在客户端区域(不包含工具栏,滚动条等)
                                                            的x坐标
            clientY                Integer            R            事件发生时,鼠标在客户端区域的y坐标        
            ctrlKey                Boolean            R            true表示ctrl键被按下
            currentTarget        Element            R            事件目前所指向的元素
            detail                Integer            R            鼠标按钮点击的次数
            eventPhase            Integer            R            事件的阶段,可能是以下值中的一个
                                                            
0:捕获阶段                                                            1

                                                            
1:在目标上
                                                            
2
:冒泡阶段
            isChar                Boolean            R            表示按下的按键是否与字符相关
            keyCode                Integer            R
/W            表示按下按键的数字代号

            metaKey                Ineger            R            表示META键是否被按下
            pageX                Ineger            R            鼠标相对于页面的x坐标
            pageY                Integer            R            鼠标相对于页面的y坐标
            preventDefault        Function        N
/A            可以调用这个方法来阻止事件的默认行为

            relatedTarget        Element            R            事件的第二目标,经常用于鼠标事件
            screenX                Integer            R            鼠标相对于整个计算机屏幕的x坐标
            screenY                Ineger            R            鼠标相对于整个计算机屏幕的y坐标
            shiftKey            Boolean            R            true表示按下shift键
            stopPagation        Function        N
/A            可调用这个方法阻止事件的冒泡

            target                Element            R            引起鼠标的元素/对象
            timestamp            Long            R            事件发生的时间,从1970年1月1日0时起的毫秒数
            type                String            R            时间的名称