为什么在IE中运行这段代码会提示type为空或不是对象?为什么border属性会无法移除?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

为什么在IE中运行这段代码会提示type为空或不是对象?为什么border属性会无法移除?

2016-03-13 16:33:55 3124 1
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>example</title>
        <style type="text/css">
            p{
                border: thin solid black;
                background: gray;
                color: white;
                padding: 10px;
                margin: 5px;
            }
        </style>
    </head>
    <body>
        <p>
            <label for="fave">fruit:<input id="fave" name="name"/></label>
        </p>
        <p>
            <label for="name">name:<input id="name" name="name"/></label>
        </p>
        <button type="submit">submit vote</button>
        <button type="reset">reset</button>
        <script type="text/javascript" defer="true">
            function handleFocusEvent(e){
                if(e.type=="focus"){//为什么在IE中运行这段代码会提示type为空或不是对象?
                    e.target.style.backgroundColor="lightgray";
                    e.target.style.border="thick solid red";
                }else{
                    e.target.style.removeProperty("background-color");
                    e.target.style.border="thick solid black";
//              e.targer.style.removeProperty("border")//为什么border属性会无法移除?
                }
            }

            var inputElems=document.getElementsByTagName("input");
            for(var i=0;i<inputElems.length;i++){
                inputElems[i].onfocus=handleFocusEvent;
                inputElems[i].onblur=handleFocusEvent;
            }
        </script>
    </body>
</html>
Go
取消 提交回答
全部回答(1)
  • 小旋风柴进
    2019-07-17 19:02:52
    
            function handleFocusEvent(e) {
                e = e || window.event;//ie事件存储在window.event中,不是直接传入函数参数
                var o = e.srcElement || e.target;//ie源对象是srcElement,不是target,要做兼容
                if (e.type == "focus") {//为什么在IE中运行这段代码会提示type为空或不是对象?
                    o.style.backgroundColor = "lightgray";
                    o.style.border = "thick solid red";
                } else {
                    o.style.cssText = ''//IE8-不支持style的removeProperty,直接设置cssText清空所有style的内容或者自己替换下cssText对应的属性
                    o.style.border = "thick solid black";
                    //              e.targer.style.removeProperty("border")//为什么border属性会无法移除?
                }
            }
    0 0
相关问答

1

回答

Seata中server托管的代理事物层面可以用时间上的cycle事件型驱动来管理吗?

2022-07-11 17:17:58 277浏览量 回答数 1

1

回答

通过connection机制,Presto实现了什么功能?

2021-12-09 20:13:39 176浏览量 回答数 1

1

回答

下面这段代码是什么意思?

2021-11-22 16:44:41 257浏览量 回答数 1

1

回答

webserver,wordpress上传主题错误 413 Request Entity Too L

2021-10-24 19:38:51 392浏览量 回答数 1

2

回答

函数计算,fun工具安装第三方依赖,提示connect ENOENT //./pipedocker_

2020-04-19 11:31:42 1101浏览量 回答数 2

1

回答

每次启动tomcat并访问站点ECS就会卡住死机 或 在无访问时tomcat自动退出。

2019-01-26 17:49:00 564浏览量 回答数 1

0

回答

iis7.5 C网站经常打不开错误提示:ERRCONNECTIONRE-FUSED

2019-01-05 11:51:53 1875浏览量 回答数 0

0

回答

Subject: Cannot send email thought server via PHP

2018-08-23 19:47:58 360浏览量 回答数 0

0

回答

手机号在黑名单(平台或运营商)(YX:8019)

2018-08-17 13:20:01 1058浏览量 回答数 0

2

回答

万网FTP连接不上网站打不开在主机管理发现数据都没有了提示异常

2017-06-15 12:05:21 3871浏览量 回答数 2
2709
文章
6591
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载