2

我正在尝试编辑在 javascript 的 for 循环中重复的图像高度,但我不知道我需要在哪里添加它。

如果它很重要,这里是变量:

        var i;
        var start = 1;
        var seg = document.getElementById("selSegs").value;
        var parent = document.getElementById("divInch"), //parent for appendChild 
                imagePath = 'InchwormSegment.gif', //variable for image
                img; //adding img element

这是我的循环:

for(i = start; i<=seg; i++) {

            img = new Image(); //creating new image object
            img.src = imagePath; // element src = imagePath
            img.style.height = "215px"; // sets the height of all in loop
            // img.style.height = (img.style.height * .9) + "px"; - does nothing
            parent.appendChild(img); //appendChild adds another child (img) object
        }

我试过添加一些数学,但我就是不知道它应该去哪里

4

2 回答 2

0

此时图像尚未style.height分配。它确实有height属性。

代替

img.style.height = (img.style.height * .9) + "px";

尝试

img.style.height = (img.height * .9) + "px";
于 2013-10-07T00:55:24.993 回答
0

让我知道这个小提琴是否完成了你想做的事情:http: //jsfiddle.net/AyNY5/。需要记住的几件事:

  1. 可以直接编辑图片的“height”属性,不需要经过style(甚至不需要加px!)
  2. Don't use new Image() - use document.createElement('img'). That's the W3C supported standard.

If I'm off let me know - otherwise, you were on the right track!

JS Code in Fiddle:

var parent = document.getElementById("imgholder")

for (i=0;i<3;i++) {
    var img = document.createElement('img');
    img.src = "http://bit.ly/1975WKA"
    img.height = "200"
    parent.appendChild(img)
}
于 2013-10-07T00:59:09.437 回答