MnZlZ 2014-10-04 07:22 采纳率: 0%
浏览 1625

javascript动态添加图片层为什么总是显示的最后一个图片?




<br> .divStyle <br> {<br> position:absolute;<br> top:window.event.clientY;<br> left:window.event.clientX;<br> height:150px;<br> width:600px;<br> border-style:solid;<br> border-width:thin;<br> border-color:Blue;<br> }<br>
<br> function backGround() {<br> var Date = { &quot;images/001small.jpg&quot;: &quot;[&#39;images/001medium.jpg&#39;,&#39;images/001.jpg&#39;]&quot;, &quot;images/002small.gif&quot;: &quot;[&#39;images/002medium.jpg&#39;,&#39;images/002.gif&#39;]&quot;, &quot;images/003small.jpg&quot;: &quot;[&#39;images/003medium.jpg&#39;,&#39;images/003.jpg&#39;]&quot; };<br> var divImg = document.createElement(&quot;div&quot;);<br> // var img = document.createElement(&quot;img&quot;);<br> divImg.className = &quot;divStyle&quot;;<br> for (var key in Date) {<br> divImg.innerHTML = &quot;<img src="+key+" />&quot;;//问题就出现在这里了。。。<br> }<br> document.body.appendChild(divImg);<br> }<br>


背景

  • 写回答

1条回答

  • 冬冬瓜 2014-10-14 05:18
    关注

    “for (var key in Date) {
    divImg.innerHTML = "";//问题就出现在这里了。。。

    这是一个For循环,如果你的本意是循环几次就动态添加几张图片,那么“divImg.innerHTML =”改成“divImg.innerHTML +=”或者"divImg.innerHTML =divImg.innerHTML+ """,注意有个"+"号,你现在的写法只会只有最后一张图片

    评论

报告相同问题?