javascript - 根据目录下的图片的个数,往html文件填充对应数量的img标签,请问有没有实现这种需求的工具?
怪我咯
怪我咯 2017-04-11 10:15:34
[JavaScript讨论组]

据说自动构建工具可以实现这种需求,可我对这个从来没接触过。网上也找不到相应的教程,请大家指点我一下。

我对于自动化的工具只用过node.js安装个browser-sync来自动刷新。

怪我咯
怪我咯

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

全部回复(1)
PHPz

这直接JS就能实现了,实现方式分为【预加载】和【延迟加载】

下面是个预加载的例子:

首先来一个空的HTML页面和最基本的CSS初始化样式


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <p class="imgwrap">
        <ul></ul>
    </p>
    <script src="js/jquery-1.11.3.min.js"></script>
    <!-- /demo.js就是下面要写的js代码 -->
    <script src="js/demo.js"></script> 
</body>
<style type="text/css">
* {
    margin: 0;
    padding: 0;
}

.imgwrap li {
    list-style-type: none;
}

img {
    vertical-align: top;
}
</style>

</html>

然后我们要往<ul>标签里塞任意数量图片(这里我就001.jpg002.jpg003.jpg表示了)


// 把图片放到数组里,一般放在自定义属性src中直接获取,这里我手写就直接写了

var imgArr = ['images/001.jpg', 'images/002.jpg', 'images/003.jpg'];

然后我在$对象上定义了一个静态方法,功能就是【遍历数组】——【生成li-a-img标签】把图片插入页面

//为了操作方便这里我使用jQuery,当然你用js也一样
(function($) {
    // arguments缩写为args
    $.preLoadImages = function(args) {
        $.each(args, function(index, val) {
            // " '+ val +' "里面加两个单引号是为了防止变量变成字符串
            $('<li><a href="javascript:void(0)"><img src="' + val + '"/></a></li>').appendTo('.imgwrap>ul');
        });
    };
})(jQuery);

最后调用这个方法就完事

// 调用函数,把图片集合imgArr传入,将会自动预加载并插入到页面
$.preLoadImages(imgArr);

此外还有延迟加载的方法,那就太多种多样了。。自己先理解上面这个再去百度吧

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

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