javascript - js 根据src的数量创建img标签?
怪我咯
怪我咯 2017-04-10 16:51:21
[JavaScript讨论组]

html部分:

<body  onload="preloader();">

<p class="comb">
    <img src="image1.jpg" alt=""/>
    <img src="" alt=""/>
    <img src="" alt=""/>
    <img src="" alt=""/>
    <img src="" alt=""/>
</p>

</body>

JS代码:

  function preloader(){
  
        // create object
        imageObj = new Image();
        // set image list
        
        images = new Array();
        images[0]="image1.jpg";
        images[1]="image2.jpg";
        images[2]="image3.jpg";
        images[3]="image4.jpg";
        // start preloading
        for(var i=0; i<=3; i++){
            var imageObj = new Image();
            imageObj.src=images[i];
            console.log(imageObj.src);
            document.getElementsByTagName('img')[i].setAttribute('src',imageObj.src);
        }
    }

显示效果:

问题:
preloader()这个方法动态设置了src,那么html中的img元素能不能根据src的数量有多少就创建多少个img呢?
一般在做动态创建图片这种需求都是怎么解决的?
求思路或建议!

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(4)
迷茫
  1. 先打印图片src源;

  2. 根据src源创建<img>

  3. 将<img>放置到目标dom里

  function preloader(){
  
        // set image list
        var images = ["image1.jpg", "image2.jpg", "image3.jpg", "image4.jpg"];

        // start preloading
        for(var i=0; i<=images.length-1; i++){
            var img= new Image();
            img.src=images[i];
            document.getElementsByClassName("comb")[0].appendChild(img);
        }
    }
高洛峰

把preloader动态直接修改dom换成 preloader先创建img 字符串,把多个img字符串作为innerHTML再插入到dom中

黄舟

如果用mvvm框架的话,比较好解决。 model生成了多少的src, 视图自动repeat 循环加载img图片

要不采用模板的方式,主动repeat 循环加载img图片

天蓬老师

做一个p,里面放img标签就可以了,根据你获得的图片数量创建。不过这样写很奇怪,如果是静态页面没有太好的解决方式,可以参考下backbone.js,应该有所帮组

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号