发表于: 2017-03-30 22:55:13

1 1241


一、今天做的事情

     1. 进行js-task4,完成了大概1/3


二、明天做的事情

      继续进行js-task4


三、遇到的问题

      遇到的问题比较麻烦:

     奇怪的问题1

var players = document.getElementsByClassName(“id”); //获取classname”id”的元素集合.

for (var i = 0 ; i < players.length; i++)  //遍历这个集合

            {

                       players[i].onclick = function(){

                       var tag = document.createElement(“div”);d

         tag.setAttribute(“class”,”tag”); //设置tag的属性

                       players[i].appendChild(tag);   //为每个集合中的元素,添加一个tag子元素

                                           // 这里有报错:Mutable variable is accessible from closure;

                       }

            }

似乎是闭包的问题。 我把players[i].appendChild(tag)改成this.appendChild(tag),函数就可以正常运行了。

至今没搞明白是哪里错了。 这里的this,难道不是调用函数的对象,也就是players[i]吗? 那为什么直接用players[i]就不行?





四、收获

1.     如何遮盖元素

白天/夜晚的月亮和太阳图标,是用一条线连着的. 我想让这条线不进入图片内部.

实现部分遮挡效果(下面左图的效果,而不是右图的效果)

 

使用绝对定位+z-index解决了这个问题, 不知道有没有更好的方法.

 

         


                                             

2.     获取并操作子元素

应该用xxx.childNodes来获取元素的子元素集合,再操作, 而不是直接用xx[0]这样来表示子元素

 






返回列表 返回列表
评论

    分享到