web第十二天

DOM2和DOM3
    样式
        对象.style.color""设置或返回样式(行内)
        对象.currentStyle["color"]获得样式(IE)
        getComputedStyle(对象,随便给)["color"]获得样式
    元素大小和偏移量
        document.body.clientWidth设置或返回带滚动条的宽度
        document.body.clientHight设置或返回带滚动条的高度
        document.documentElement.clientWidth设置或返回可视化宽度
        document.documentElement.clientHight设置或返回可视化高度
        offsetWidth标签的宽度(包括边框和边距)
        offsetHight标签的宽度(包括边框和边距)
        offsetTop标签上方的偏移量
        offsetLeft标签左侧的偏移量
        offsetParent返回标签的父类对象
    滚动条位置
        srcollWidth没有滚动条的元素总宽度
        srcollHight没有滚动条的元素总高度
        srcollTop滚动条上方的偏移量
        srcollLeft滚动条左侧的偏移量
    兼容性
        document.compatMode判断浏览器是否是混杂模式
        BackCompat混杂模式  Css1Compat标准模式

封装方法
            function css(){
                if(arguments.length==2){//获取
                    if(getComputedStyle){
                        return getComputedStyle(arguments[0],false)[arguments[1]]
                    }
                    else{
                        return arguments[0].currentStyle[arguments[1]]
                    }
                }
                else if(arguments.length==3){//设置
//                    arguments[0].style.arguments[1]=arguments[2]
                    arguments[0].style[arguments[1]]=arguments[2]
                }
            }
            var v=css(div,"width")
            console.log(v)
            css(div,"width","300px")

    事件
        事件流
        事件冒泡(IE)
        从具体元素开始,在逐层寻找上层嵌套标签,依次向上传播
        h1->div->body->html->document
        事件捕获
        从根节点开始执行,逐层向下开始寻找,一直找到带事件的节点为止
        document->html->body->div->h1
    注意:从DOM2开始,都是执行DOM事件流
    DOM事件流
        包括三个阶段:事件捕获阶段,处于目标阶段,事件冒泡阶段
        执行顺序:首先发生事件捕获,为事件提供机会,然后是事件的目标阶段进行接收事件,最后执行冒泡阶段
        document->html->body->div->h1->div->body->html->document
    事件下的属性和方法
        altKey 返回当事件被触发时,"ALT"是否被按下
        button 返回当事件被触发时,哪个鼠标按钮被点击
        0左键  1中间键  2右键
        clientX 返回当事件被触发时,鼠标指针的水平坐标
        clientY 返回当事件被触发时,鼠标指针的垂直坐标
        ctrlKey 返回当事件被触发时,"CTRL"键是否被按下
        relatedTarget 返回与事件的目标节点相关的节点
        screenX 返回当某个事件被触发时,鼠标指针的水平坐标
        screenY 返回当某个事件被触发时,鼠标指针的垂直坐标
        shiftKey 返回当事件被触发时,"SHIFT"键是否被按下
        cancelBubble 如果事件句柄想阻止时间传播到包容对象,必须把该属性设为true
        keyCode 对于keypress事件返回Unicode字符码;keydown和keyup事件返回虚拟键盘码
        returnValue 把这个属性设置为fasle,可以取消发生事件的源元素的默认动作
        bubbles 返回布尔值,指示事件是否是起泡事件类型。
        cancelable返回布尔值,指示事件是否可拥可取消的默认动作。
        currentTarget 返回其事件监听器触发该事件的元素。
        target 返回触发此事件的元素(事件的目标节点)
        type 返回当前 Event对象表示的事件的名称。
        preventDefault()通知浏览器不要执行与事件关联的默认动作。
        stopPropagation()不再派发事件。

    *阻止冒泡的方法有哪些
        1.if(v==e.target)( console.log(v))//适应所有浏览器
        2.e.cancelBubble=true//支持IE低版本
        3.e.stopPropagation()//高本版浏览器
    *阻止默认行为的方法有哪些
        1.return false 适应所有浏览器
        2.e.returnValue=false 适应所有浏览器
        3.e.preventDefault()支持高本版浏览器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值