黑马程序员技术交流社区

标题: dom 的this [打印本页]

作者: 胡元江    时间: 2013-3-3 14:41
标题: dom 的this
  
//得到焦点的时候文本框的颜色会变黄。其它颜色不变 下面是<script/>
function GetOnfocus() {
            var txt = document.getElementsByTagName("input");
            for (var a = 0; a < txt.length; a++) {
                var value = txt[a];
                value.onfocus = FocusChange;
            }
        }

function FocusChange() {
                    var txt = document.getElementsByTagName("input");
                    for (var a = 0; a < txt.length; a++) {
                        var value = txt[a];
                        if (value == this) {
                            value.style.background = "yellow";
                            //这里的this好像就是当前事件发生的对象。但是为什么我只能用value.样式 而不能用this.style    哪位高手指点下
                        }
                        else {
                            value.style.background = "white";
                        }
                    }
        }
作者: 许庭洲    时间: 2013-3-3 18:16
这里的this指的是每一个txt对象,程序通过循环,给每一个txt加上了一个文本框的背景颜色黄色,不可以把this.style.background替换为:value.style.background。
作者: 胡元江    时间: 2013-3-3 19:16
照上面的==来看每次循环this也只代表了一txt也就是==value的那个那么下面this.value




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2