微信公众号开发笔记6(WEUI组件实现图片上传、预览、删除)

2023-11-17

没有废话直接上代码

1、新建HTML5,样式自行百度下载

<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0">
    <title>八月皇帝</title>
    <!-- 引入 WeUI CDN 链接 -->
    <link rel="stylesheet" href="./plugin/weui-2.6.4/dist/style/weui.min.css"/>
    <link rel="stylesheet" href="./css/weui.css"/>
    <link rel="stylesheet" href="./css/weuix.css"/>


    <style>

    </style>

</head>

<body ontouchstart>
<div class="page-bd-15">
    <div class="weui-form">
        <div class="weui-form__bd">
            <div class="weui-form__text-area">
                <h2 class="weui-form__title">XXXX问题反馈表</h2>
            </div>
            <div class="weui-form__control-area">
                <div class="weui-cells__group weui-cells__group_form">
                    <div class="weui-cells__title">个人基本信息</div>
                    <div class="weui-cells">
                        <label for="js_input1" class="weui-cell weui-cell_active">
                            <div class="weui-cell__hd"><span class="weui-label">微信号</span></div>
                            <div class="weui-cell__bd">
                                <input id="js_input1" class="weui-input" placeholder="填写本人微信号"  />
                            </div>
                        </label>

                        <label for="js_input2" class="weui-cell weui-cell_active">
                            <div class="weui-cell__hd"><span class="weui-label">昵称</span></div>
                            <div class="weui-cell__bd">
                                <input id="js_input2" class="weui-input" placeholder="填写本人微信号的昵称"/>
                            </div>
                        </label>
                        <label for="js_input3" class="weui-cell weui-cell_active">
                            <div class="weui-cell__hd"><span class="weui-label">联系方式</span></div>
                            <div class="weui-cell__bd">
                                <input id="js_input3" class="weui-input" placeholder="请填写联系方式" type="number" pattern="[0-9]*" />
                            </div>
                        </label>

                        <div class="weui-cells weui-cells_form">
                            <div class="weui-cells__title" style="margin-top: 8px">问题描述</div>
                            <div class="weui-cell weui-cell_active">
                                <div class="weui-cell__bd">
                                    <textarea class="weui-textarea" placeholder="请描述你的问题" rows="3" maxlength="200"></textarea>
                                    <div role="option" aria-live="polite" class="weui-textarea-counter"><span>0</span>/200</div>
                                </div>
                            </div>
                        </div>
                        
                        <div class="weui-cell weui-cell_active">
                            <div class="weui-uploader">
                                <div class="weui-uploader__hd">
                                    <p class="weui-uploader__title">图片上传及预览</p>
                                    <div class="weui-uploader__info"><span class="imgSum"></span>/8</div>
                                </div>
                                <div class="weui-uploader__bd">
                                    <ul class="weui-uploader__files" id="uploaderFiles">
                                        <li class="weui-uploader__file" style="background-image:url(./images/1.jpg)"></li>
                                        <li class="weui-uploader__file" style="background-image:url(./images/2.jpg)"></li>
                                        <li class="weui-uploader__file" style="background-image:url(./images/3.jpg)"></li>
                                        <li class="weui-uploader__file weui-uploader__file_status" style="background-image:url(./images/1.jpg)">
                                            <div class="weui-uploader__file-content">
                                                <i class="weui-icon-warn"></i>
                                            </div>
                                        </li>
                                        <li class="weui-uploader__file weui-uploader__file_status" style="background-image:url(./images/2.jpg)">
                                            <div class="weui-uploader__file-content">50%</div>
                                        </li>
                                    </ul>
                                    <div class="weui-uploader__input-box">
                                        <input id="uploaderInput" class="weui-uploader__input" accept="image/*" multiple="" type="file">
                                    </div>
                                </div>
                            </div>
                            <div class="weui-gallery" style="display: none">
                                <span class="weui-gallery__img"></span>
                                <div class="weui-gallery__opr">
                                    <a href="javascript:" class="weui-gallery__del">
                                        <i class="weui-icon-delete weui-icon_gallery-delete"></i>
                                    </a>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>

        <div class="weui-form__ft">
            <div class="weui-form__opr-area">
                <a role="button" disabled aria-disabled="true" class="weui-btn weui-btn_primary weui-btn_disabled" href="javascript:">确定</a>
            </div>

            <div class="weui-form__extra-area">
                <div class="weui-footer">
                    <p class="weui-footer__links">
                        <a href="./pay.html" class="weui-footer__link">XXXX门户网站</a>
                    </p>
                    <p class="weui-footer__text">Copyright © 2023 XXXXXXX有限公司 版权所有 </p>
                </div>
            </div>
        </div>
    </div>


</div>




<!--页面切换-->
<script src="http://res.wx.qq.com/open/js/jweixin-1.6.0.js"> </script>
<script src="./js/zepto.min.js"></script>
<script src="./js/zepto.weui.js"></script>
<script src="./js/lrz.min.js"></script>
<script src="https://res.wx.qq.com/t/wx_fed/weui.js/res/1.2.18/weui.min.js"></script>
<script src="js/common.js"></script>
<script src="js/main.js"></script>
</body>
</html>

js实现部分

<script>
    $(function(){
        uploaderImg();
        sumImgSize();
    });

    function sumImgSize() {
        var length = document.getElementById("uploaderFiles").getElementsByTagName("li").length;
        $('.imgSum').text(length);
    }
    function uploaderImg() {
        var tmpl = '<li class="weui-uploader__file" style="background-image:url(#url#)"></li>';
        var      $uploaderInput = $("#uploaderInput"); //上传按钮+
        var       $uploaderFiles = $("#uploaderFiles");    //图片列表
        var $galleryImg = $(".weui-gallery__img");//相册图片地址
        var $gallery = $(".weui-gallery");

        $uploaderInput.on("change", function(e){
            var src, url = window.URL || window.webkitURL || window.mozURL, files = e.target.files;

            for (var i = 0, len = files.length; i < len; ++i) {
                var file = files[i];

                if (url) {
                    src = url.createObjectURL(file);
                } else {
                    src = e.target.result;
                }
                $uploaderFiles.append($(tmpl.replace('#url#', src)));
                sumImgSize();
            }
        });
        var index; //第几张图片
        $uploaderFiles.on("click", "li", function(){
            index = $(this).index();
            $galleryImg.attr("style", this.getAttribute("style"));
            console.log(this)
            $gallery.fadeIn(100);
        });
        $gallery.on("click", function(){
            $gallery.fadeOut(100);
        });
        //删除图片
        $(".weui-gallery__del").click(function() {
            $uploaderFiles.find("li").eq(index).remove();
        });
    }
    

</script>

效果图

可以预览和删除

 

 上传新的图片

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信公众号开发笔记6(WEUI组件实现图片上传、预览、删除) 的相关文章

  • @Transient 理解

    transient使用小结 1 一旦变量被transient修饰 变量将不再是对象持久化的一部分 该变量内容在序列化后无法获得访问 2 transient关键字只能修饰变量 而不能修饰方法和类 注意 本地变量是不能被transient关键字
  • YOLOV2个人理解总结

    YOLOv2框架图 YOLOv2改进之处 1 Batch Normalization BN Batch Normalization 层简单讲就是对网络的每一层的输入都做了归一化 这样网络就不需要每层都去学数据的分布 收敛会快点 原来的YOL
  • 面试题:如何测试登录功能

    最近在做一个创新项目 这个项目有二个平台 每个平台都有前后端 故有四个系统 每个系统都有登录功能 而且不同系统代码设计方式都有所差异 所以就这个登录功能而言就要测试四次 看似一个简单的登录功能其中设计的测试点也是相当复杂 今天就讲讲如何测试

随机推荐

  • php scp跨服器拷贝文件到sftp

    一般要装php的ssh2扩展 比较麻烦 所以转念一想 为什么不用我们经常用的scp 但是scp跨服务器拷贝需要输入密码 这里就用到了一个工具试试sshpass 可以指定密码 1 工具安装 ubuntu安装 sudo apt get inst
  • 【问题解决】org.springframework.dao.QueryTimeoutException: Redis command timed out; nested exception is io

    1 出现问题异常 核心错误输出 org springframework dao QueryTimeoutException Redis command timed out nested exception is io lettuce cor
  • B站马士兵python入门基础版详细笔记(3)

    一 input函数的使用 他的返回值类型一定是str类型 m1 input please input the first word m2 input please input the second word print int m1 int
  • c++库 Android调用

    如果您想在Android应用程序中使用C 库 您可以通过以下几个步骤封装C 库以供Android调用 创建一个新的Android项目并设置C 支持 在Android Studio中创建一个新的Android项目 并选择包含C 支持的选项 将
  • [学C日记]---递归

    递归 自己调用自己 大事化小 必要条件 1 有限制条件 当满足限制条件时 递归便不继续 2 每次递归调用之后越来越接近这个限制条件 3 递归层次不能太深 太深容易栈溢出 每次递归调用都要给函数分栈区 次数过多容易空间不足 1 一串数字挨个输
  • 深聊自动化测试之:小鱼整理21条避坑指南,让你完美运行自动化

    自动化测试避坑总结 1 引言 2 避坑内容总结 2 1无法定位到元素 2 2 Indentation Error 2 3 PO设计模式类 2 4 页面封装类中没有已定义函数的问题 2 4 1 提示没有该方法 2 4 2 没有定义好的函数 2
  • Android Netd

    一 概述 所谓 Netd 就是Network Daemon 的缩写 表示Network守护进程 类似的命名还有很多 例如 Vold Volumn Deamon Rild Radio Interface Layer Deamon Netd负责
  • 根据面试的过程修正2022年学习规划

    上周由于全员降薪 所以对于在招聘网站上这30天内主动给我打招呼的hr和猎头 我都投了简历 结果是投简历16家公司 给与面试机会的七家 斩获了两家offer 一家七百多人的军事仿真类的公司 一家小到不能再小的ue4公司 好的方面是还能找到工作
  • python爬虫-33个Python爬虫项目实战(推荐)

    今天为大家整理了32个Python爬虫项目 整理的原因是 爬虫入门简单快速 也非常适合新入门的小伙伴培养信心 所有链接指向GitHub 祝大家玩的愉快 O O WechatSogou 1 微信公众号爬虫 基于搜狗微信搜索的微信公众号爬虫接口
  • Redis6.2/5.0 集群两种快速搭建方式

    一 集群常识 1 redis在3 0之前是集群 仅支持单实例的 3 0以后开始支持集群 2 3 0的集群命令也不是那么亲和 需要用ruby编写的脚本 而且需要登录redis客户端操作 启动 增删节点 移动槽位等 redis 5 0以后 可以
  • 楚留香获取服务器信息卡住了,楚留香手游角色卡住不动怎么办 卡死解决办法...

    楚留香手游角色卡住不动怎么办 来看看卡死解决办法 由于手机 网络和服务器等等原因 玩家会出现角色卡住动不了 操作界面消失 无法切换场景等等情况 非常影响游戏体验 来看看怎么解决吧 楚留香手游角色卡住不动怎么办 如果您在游戏中遇到角色卡住 无
  • 建立docker私有hub

    docker是一个非常好用的虚拟化工具 下面给出建立私有docker hub的方法 docker将私有hub的环境打包在registry image中 执行指令 docker run p 5000 5000 registry 这条指令启动一
  • F - LIS on Tree

    F LIS on Tree atcoder jp 问题描述 树上LIS 普通LIS O n n void solve int n cin gt gt n vector
  • 【Allegro 17.4软件操作保姆级教程二】布局前准备

    由于Allegro 17 2软件出了故障 干脆新安装了17 4版本 后续的教程截图都用17 4的 操作逻辑是差不多的 1 生成和导入网表 1 原理图绘制完成 导出网表 在Capture中 选中原理图dsn文件 tools create ne
  • 企业服务端接口认证案例

    接口认证方式 调用方要向管理员获取 appkey 和 secret appkey 调用方唯一标识 方便 HTTP API 统计与维护 secret 密钥 用于生成 HTTP API 校验所需的 token 值 调用方每次请求都需要带上当前时
  • PPP协议、PPPoE协议、L2TP协议的关系

    1 简述 首先对这3中协议做一个简单的描述 协议 协议类型 描述 PPP 点对点链路层协议 应用最广泛的点对点协议 可应用在多种网络 改善了SLIP协议的不足 PPPoE 点对点链路层协议 对PPP协议进行扩展 将PPP用于以太网上 L2T
  • CNN,Transformer,MLP三分天下

    title 论文列表 1 MLP Mixer MLP Mixer An all MLP Architecture for Vision 2 MetaFormer MetaFormer is Actually What You Need fo
  • 原生JS实现贪吃蛇游戏

    原生JS实现贪吃蛇游戏 贪吃蛇游戏 原生JavaScript 贪吃蛇游戏思路分析 游戏思想 面向对象的思想 三个js文件分别代表三个对象 三个对象相互独立 在HTML中控制全局 使用面向对象思想的好处 贪吃蛇游戏采用面向对象的思想去实现 我
  • 2023年第七届航空航天、机械与机电工程国际会议(CAMME 2023)

    2023年第七届航空航天 机械与机电工程国际会议 CAMME 2023 重要信息 会议网址 www camme org 会议时间 2023年2月18 20日 召开地点 中国广州 截稿时间 2023年12月30日 录用通知 投稿后2周内 收录
  • 微信公众号开发笔记6(WEUI组件实现图片上传、预览、删除)

    没有废话直接上代码 1 新建HTML5 样式自行百度下载