突然要维护前辈们的项目,angularJs 写的以前没有用过,在此记录一下

1,首先是 html 弹窗页面

<div class="ngdialog-title">{{ngDialogData.title}}</div>
<div class="ngdialog-message" bindonce><div class="select-group-user-container"><div class="left"><div class="left-list" ng-class="{'active': imageClassify == 'personal'}" ng-click="selectImageClassify('personal')">个人库</div><div class="left-list" ng-class="{'active': imageClassify == 'system'}" ng-click="selectImageClassify('system')">系统库</div></div><div class="right"><div class="img-concent" ng-show="selectImageList.length > 0"><div class="concent-div" ng-repeat="(key, imgfile) in selectImageList track by key" ng-if="['jpg', 'png', 'jpeg', 'gif', 'bmp'].indexOf(imgfile.obj_type) > -1"><img src="{{imgfile.url}}"class="img-style"alt="加载中..."><div class="img-select" ng-click="selectImg(imgfile)"><img ng-if="pageImageSrc == imgfile.url" src="/static/img/bdp-ok.png" class="img-select-svg"/></div><div class="img-name" title="{{imgfile.obj_name}}">{{imgfile.obj_name}}</div></div></div><div class="nodata" ng-show="!isSelectImageList && selectImageList.length === 0">暂无数据</div><div class="nodata" ng-show="!isSelectImageList && getImageListParam.page === selectImageListPagesCount && selectImageList.length > 30">没有更多了</div></div></div>
</div>
<div class="ngdialog-buttons" bindonce><button type="button" class="ngdialog-button ngdialog-button-secondary" ng-click="selectImageOk()" bo-text="'ok' | translate" ></button><button type="button" class="ngdialog-button ngdialog-button-secondary" ng-click="closeThisDialog()" bo-text="'cancel' | translate" ></button>
</div>

2,点击按钮 执行打开弹窗函数

// 前序 代码 directive() 中需要引入 ngDialog// 图片素材列表$scope.selectImageList = [];// 素材资源请求参数$scope.getImageListParam = {postfix : "jpg,png,jpeg,gif,bmp",page: 1, // 第一页page_size: 31// is_system: 1}// 图片列表 总页数$scope.selectImageListPagesCount = 0;
// -----------------------------------------------------------$scope.selectImage = function() {$scope.isSelectImageList = false;$scope.imageClassify = 'personal';// 默认加载第一页$scope.getImageListParam.page = 1// 默认加载个人库delete $scope.getImageListParam.is_system;$scope.isSelectImageList = true;// 调用业务接口commonService.dsh_design.getMaterialList($scope.getImageListParam).then(res => {$scope.isSelectImageList = false;if (res.data.status == "0") {$scope.selectImageList = res.data.result.data_list;$scope.selectImageListPagesCount = res.data.result.pages_count;//--- 打开选择框代码 start$scope.selectImageDialog = ngDialog.open({template: '/static/dashboard/adv-page/select-image.html',className: 'ngdialog-theme-default ngDialog-width-950 ngDialog-select-image-dialog',scope: $scope,data: {title: '选择图片'}});} else {errHint(res.data.errstr);}}).finally(() => {$scope.isSelectImageList = false;})// ------- 打开选择框代码 end };

3,窗口样式 css

.ngDialog-select-image-dialog {.apply-all-user {text-align: right;line-height: 32px;}.select-group-user-container {position: relative;height: 600px;overflow: hidden;.left {float: left;width: 100px;height: 100%;overflow: auto;padding: 8px 0;font-size: 14px;.left-list {height: 32px;line-height: 32px;padding-left: 16px;display: flex;align-items: center;cursor: pointer;.list-title {display: block;max-width: 108px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}.list-name-flex {display: flex;align-items: center;}}.padding-left-24 {padding-left: 24px;justify-content: space-between;}.active {// background-color:  @theme($bgDialogHoverList);background-color:  @theme($bgNgdialogBtnOkHover);color: @theme($fontTextHover);}}.right {position: relative;margin-left: 100px;height: 100%;padding: 8px 12px;z-index: 2;overflow-y: auto;.img-concent {display: flex;// max-height: 0px;overflow: hidden;flex-flow: row wrap;.img-style {margin: 8px 12px;border-radius: 8px;background: #303643;width: 100px;height: 80px;}.concent-div {position: relative;.img-name {max-width: 120px;text-align: center;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;top: -10px;margin-left: 4px;position: relative;cursor: default;}.img-select {position: absolute;display: flex;width: 100px;height: 80px;top: 5px;left: 5px;padding: 3px;cursor: pointer;// align-items: flex-end;.img-select-svg {position: absolute;left: 80px;top: 10px;width: 22px;height: 22px;}}}}.nodata {line-height: 32px;text-align: center;font-size: 14px;}}}
}// 主题样式相关变量
.ngDialog-select-image-dialog {.select-group-user-container {background: @theme($bgAddGroupMemberContainer);box-shadow: @theme($shadowAddGroupMemberContainer);.left {.left-list:hover {background-color:  @theme($bgNgdialogBtnOkHover);color: @theme($fontTextHover);}}.right {background: @theme($bgAccountWrap);box-shadow: @theme($shadowAccountListRightContent);}}
}

angularJs - 弹窗相关推荐

  1. 【Ionic+AngularJS 开发】之『个人日常管理』App(二)

    准备工作 资源 预装工具 安装bower 1 npm install -g bower 安装ngCordova 1 bower install ngCordova (*由于网络获取资源的原因,后面几次 ...

  2. Android 自定义WebView弹窗及屏蔽弹窗

    额,还是那个WebView的问题,内核已换成腾讯X5内核,所以接下来的内容会有一些X5内核的方法.但我们的H5是不能改的,还是只有委屈我们自己.先看看H5自带的弹窗 这样子的弹窗在不同的手机上呈现的可 ...

  3. angularjs sill 创建项目_开源项目——博客项目MyBlogs.Core,基于.NET 5

    个人博客站项目源码,高性能低占用的博客系统,这也许是我个人目前写过的性能最高的web项目了 .目前日均处理请求数80-120w次,同时在线活跃用户数30-100人,数据量累计已达到100多万条,数据库 ...

  4. AngularJS+Satellizer+Node.js+MongoDB-Instagram-01

    2019独角兽企业重金招聘Python工程师标准>>> Build an Instagram clone with AngularJS, Satellizer, Node.js an ...

  5. AngularJS和DataModel

    通常,在AngularJS中使用JSON作为存储数据的模型.我们可能这样在controller中写model: app.controller('BookController',['$scope',fu ...

  6. AngularJS 杂项知识点

    1.要用ngChange要同时使用ngModel,下拉选择获取当前选中值. 2.打包代替动态加载(js文件) requirejs真正的价值在于模块化,不是动态加载,angularjs本身有模块化机制, ...

  7. angularjs post 跨域

    web api搞好了:用Ajax妥妥的:但是前端用的AngulagJS,也懒得再换为Ajax了: 但是问题来了:提示: 已拦截跨源请求:同源策略禁止读取位于 http://x.x.x.x:port/a ...

  8. AngularJS 指令

    1. AngularJS指令的特点: AngularJS通过被称为指令的新属性来扩展HTML,指令的前缀为ng-. AngularJS通过内置的指令来为应用添加功能. AngularJS允许你自定义指 ...

  9. AngularJS中的按需加载ocLazyLoad

    欢迎大家讨论与指导 : ) 初学者,有不足的地方希望各位指出 一.前言 ocLoayLoad是AngularJS的模块按需加载器.一般在小型项目里,首次加载页面就下载好所有的资源没有什么大问题.但是当 ...

  10. 【12】AngularJS 事件

    AngularJS 事件 AngularJS 有自己的 HTML 事件指令. ng-click 指令 ng-click 指令定义了 AngularJS 点击事件. <div ng-app=&qu ...

最新文章

  1. 首次!腾讯全面公开整体开源路线图
  2. 英伟达A100可达V100的3.5倍?
  3. 微软获GPT-3独家授权,OpenAI创始人马斯克:与初衷相悖
  4. python肘部法则 最优分类
  5. MySQL的进阶实战篇
  6. springboot中的拦截器interceptor和过滤器filter,多次获取request参数
  7. 数据库SQL ServerSQL Server教程:详细学习游标
  8. Matlab线性/非线性规划优化算法(1)
  9. python 使用tsfresh进行时间序列特征提取
  10. java 自定义形状按钮_制作自定义背景Button按钮、自定义形状Button的全攻略
  11. Android粒子爆炸特效[可用于任意控件]
  12. 密码密文 android,Android开发之密码明文密文切换显示
  13. 如何短期通过PMP考试?
  14. zblog小程序模板-青春小程序模板
  15. 一个点的经度和纬度,以这个点为圆心,1000米为半径,最大的经度和纬度,最小的经度和纬度
  16. 给儿子讲美国独立战争
  17. 吴恩达《构建机器学习项目》精炼笔记(2)-- 机器学习策略(下)
  18. java IO、NIO、AIO详解
  19. (一)大数据学习引言——大数据概述
  20. 为什么我们懂得很多道理,却依然过不好这一生?

热门文章

  1. html二级菜单点击淡入淡出,Web前端开发实战1:二级下拉式菜单之CSS实现
  2. 可靠性测试的定义、测试点及用例设计方法
  3. 机器学习里的攻击-躲避攻击(Evasion attacks)
  4. 虚拟机安装ubuntu的相关经验总结及常见疑问
  5. TOF相机(Time of Fight Camera)(维基百科全翻译版)
  6. 被誉为现代电子计算机之父是,成教云: 人们习惯上尊称图灵为现代电子计算机之父。...
  7. 最详细的【微信小程序+阿里云Web服务】开发部署指引(三):开通阿里云主机
  8. python 按行读取_python按行读取
  9. CSS:个人常用搜索框样式
  10. 学会它,能让你工作学习效率提升10倍!