MDN相片走廊的一些总结

MDN相片走廊的一些总结

一、布局


A:看了一下例子,我应该给他分块

共3个板块:

1、当前图片块

2、要覆盖的块

3、预览图板块


所以我们的html代码应该这样写

<div>

    <div></div>

</div>

<div><div>


B:这里因为第二个块在第一块里面,第一个是一个大的div块,包含三部分:1、当前显示的图片,2、第二个块,3、按钮

所以第一个大块应该这样写

<div>

<img>打开页面的图片</img>

<div>第二个块</div>

</div>


C:第三个就是预览块,执行循环函数

for()在css里做好对齐以及尺寸设置,剩下的就是写函数问题了

for(i  = 1; i<= 5; i++)

二、函数

1、底下的预览图片可以点击,然后触发事件,第二个块将其覆盖

在这之前,先定义下新图片var newImage = document.createElement('img');

2、然后,创建新图片 newImage.setAttribute('src',images/pic + i +'.jpg');

3、建立子元素 thubBar.appendChild(newImage);|这点我理解的还不是很透彻,前面已经创建元素img了,为什么这里又要创建子元素????

4、再然后开始点击了,因为点击时是当前的图片,不能用newImage元素,这个元素已经执行到最后一个了,要定义一个新的.图片地址,

于是,我们就定义一个var imgSrc = e.target.getAttribute('src'); 然后把这个函数命名为displayImage(imgSrc);


5、于是执行编写点击事件时,获取当前点击图片的src的数据newImage.onclick = function(e){

var imgSrc = e.target.getAttribute('src')

}

6、然后再执行生成新的图片的函数


function displayImage(imgSrc){

displayedImage.setAttribute('src',imgSrc);

}

7、for循环语句至此结束,实现了点击图片--获取当前点击图片的地址---在块上生成新的地址的图片

8、这部分就是点亮半透明的块就行了。


地址如下

https://mdn.github.io/learning-area/javascript/building-blocks/gallery/