weui框架实现上传、预览和删除图片功能代码


Posted in Javascript onAugust 24, 2017

jQuery WeUI 是专为微信公众账号开发而设计的一个简洁而强大的UI库,包含全部WeUI官方的CSS组件,并且额外提供了大量的拓展组件,丰富的组件库可以极大减少前端开发时间。

jQuery WeUI 的最大特点是它只提供UI组件,并不会对项目所使用的框架和其他库有任何的限制,几乎可以在任何环境下使用。无论你的项目是基于jQuery,还是 React, Angular, Vue, 你都会发现 jQuery WeUI 能非常方便的和他们结合使用。既是你的项目是一个有很悠久历史的老项目,也几乎可以做到拿来即用。

weui框架暂时只有css文件,并没有js文件实现其功能,我在其html+css后面增加了js实现其功能,为大家提供方便,也为自己保存记录。

<!doctype html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <link href="../css/mui.min.css" rel="external nofollow" rel="stylesheet" />
    <link rel="stylesheet" href="weui.min.css" rel="external nofollow" rel="external nofollow" />
    <link rel="stylesheet" href="jquery-weui.css" rel="external nofollow" rel="external nofollow" />
  </head>
  <body>
    <div class="weui-gallery" id="gallery">
      <span class="weui-gallery__img" id="galleryImg"></span>
      <div class="weui-gallery__opr">
        <a href="javascript:" rel="external nofollow" class="weui-gallery__del">
          <i class="weui-icon-delete weui-icon_gallery-delete"></i>
        </a>
      </div>
    </div>
    <div class="weui-cells weui-cells_form">
      <div class="weui-cell">
        <div class="weui-cell__bd">
          <div class="weui-uploader">
            <div class="weui-uploader__hd">
              <p class="weui-uploader__title">图片上传</p>
              <div class="weui-uploader__info">0/2</div>
            </div>
            <div class="weui-uploader__bd">
              <ul class="weui-uploader__files" id="uploaderFiles">
                <li class="weui-uploader__file" style="background-image:url(../images/applogo180x180.png)"></li>
                <li class="weui-uploader__file" style="background-image:url(../images/applogo180x180.png)"></li>
                <li class="weui-uploader__file" style="background-image:url(../images/applogo180x180.png)"></li>
                <li class="weui-uploader__file weui-uploader__file_status" style="background-image:url(../images/applogo180x180.png)">
                  <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/applogo180x180.png)">
                  <div class="weui-uploader__file-content">50%</div>
                </li>
              </ul>
              <div class="weui-uploader__input-box">
                <input id="uploaderInput" class="weui-uploader__input zjxfjs_file" type="file" accept="image/*" multiple="">
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
    <script src="../js/mui.min.js"></script>
    <script type="text/javascript" src="jquery-2.1.4.js"></script>
    <script type="text/javascript" src="jquery-weui.js"></script>
    <script type="text/javascript">
      mui.init();
      $(function() {
        var tmpl = '<li class="weui-uploader__file" style="background-image:url(#url#)"></li>',
          $gallery = $("#gallery"),
          $galleryImg = $("#galleryImg"),
          $uploaderInput = $("#uploaderInput"),
          $uploaderFiles = $("#uploaderFiles");
        $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)));
          }
        });
        var index; //第几张图片
        $uploaderFiles.on("click", "li", function() {
          index = $(this).index();
          $galleryImg.attr("style", this.getAttribute("style"));
          $gallery.fadeIn(100);
        });
        $gallery.on("click", function() {
          $gallery.fadeOut(100);
        });
        //删除图片 删除图片的代码也贴出来。
        $(".weui-gallery__del").click(function() { //这部分刚才放错地方了,放到$(function(){})外面去了
          console.log('删除');
          $uploaderFiles.find("li").eq(index).remove();
        });
      });
    </script>
  </body>
</html>

补充说明上述代码中引用以下的这四个文件可以到http://jqweui.com这个weui的官网去下载

<link rel="stylesheet" href="weui.min.css" rel="external nofollow" rel="external nofollow" />
 <link rel="stylesheet" href="jquery-weui.css" rel="external nofollow" rel="external nofollow" />
 <script type="text/javascript" src="jquery-2.1.4.js">
 </script><script type="text/javascript" src="jquery-weui.js"></script>

总结

以上所述是小编给大家介绍的weui框架实现上传、预览和删除图片功能代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
TopList标签和JavaScript结合两例
Aug 12 Javascript
jQuery层次选择器选择元素使用介绍
Apr 18 Javascript
JavaScript+html5 canvas制作的圆中圆效果实例
Jan 27 Javascript
jquery单击事件和双击事件冲突解决方案
Mar 02 Javascript
基于jquery日历价格、库存等设置插件
Jul 05 jQuery
jQuery条件分页 代替离线查询(附代码)
Aug 17 jQuery
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 jQuery
微信小程序canvas分享海报功能
Oct 31 Javascript
js实现星星打分效果
Jul 05 Javascript
JS寄快递地址智能解析的实现代码
Jul 16 Javascript
JavaScript如何操作css
Oct 24 Javascript
Vue项目中使用mock.js的完整步骤
Jan 12 Vue.js
jQuery Datatable 多个查询条件自定义提交事件(推荐)
Aug 24 #jQuery
详解webpack2+node+react+babel实现热加载(hmr)
Aug 24 #Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
Aug 24 #Javascript
JS对象序列化成json数据和json数据转化为JS对象的代码
Aug 23 #Javascript
Angular 2 利用Router事件和Title实现动态页面标题的方法
Aug 23 #Javascript
angular2路由切换改变页面title的示例代码
Aug 23 #Javascript
通俗解释JavaScript正则表达式快速记忆
Aug 23 #Javascript
You might like
PHP 巧用数组降低程序的时间复杂度
2010/01/01 PHP
php数组的一些常见操作汇总
2011/07/17 PHP
使用PHP备份MySQL和网站发送到邮箱实例代码
2013/11/28 PHP
PHP微信模板消息操作示例
2017/06/29 PHP
window.onload 加载完毕的问题及解决方案(下)
2009/07/09 Javascript
js png图片(有含有透明)在IE6中为什么不透明了
2010/02/07 Javascript
jQuery实现长文字部分显示代码
2013/05/13 Javascript
JavaScript中的Truthy和Falsy介绍
2015/01/01 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
AngularJS中的按需加载ocLazyLoad示例
2017/01/11 Javascript
详解使用angularjs的ng-options时如何设置默认值(初始值)
2017/07/18 Javascript
jQuery实现的文字逐行向上间歇滚动效果示例
2017/09/06 jQuery
基于require.js的使用(实例讲解)
2017/09/07 Javascript
vue router学习之动态路由和嵌套路由详解
2017/09/21 Javascript
Vue项目组件化工程开发实践方案
2018/01/09 Javascript
mpvue开发音频类小程序踩坑和建议详解
2019/03/12 Javascript
js/jQuery实现全选效果
2019/06/17 jQuery
vue 通过 Prop 向子组件传递数据的实现方法
2020/10/30 Javascript
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
2021/02/26 Vue.js
[14:00]DOTA2国际邀请赛史上最长大战 赛后专访B神
2013/08/10 DOTA
[03:03]2014DOTA2国际邀请赛 EG战队专访
2014/07/12 DOTA
Django ImageFiled上传照片并显示的方法
2019/07/28 Python
Python基于类路径字符串获取静态属性
2020/03/12 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
python 爬取英雄联盟皮肤并下载的示例
2020/12/04 Python
一款纯css3实现的竖形二级导航的实例教程
2014/12/11 HTML / CSS
Kiehl’s科颜氏西班牙官方网站:源自美国的植物护肤品牌
2020/02/22 全球购物
How to spawning asynchronous work in J2EE
2016/08/29 面试题
DELPHI面试题研发笔试试卷
2015/11/08 面试题
社区七一党员活动方案
2014/01/25 职场文书
四风对照检查材料范文
2014/09/27 职场文书
仓库管理员岗位职责
2015/02/03 职场文书
2015新生加入学生会自荐书
2015/03/24 职场文书
2016继续教育研修日志
2015/11/13 职场文书
2016大学迎新晚会开场白
2015/11/24 职场文书
vue3不同环境下实现配置代理
2022/05/25 Vue.js