半透明化弹出框(Popup)边框

半透明化的边框很眩吧。其实实现起来很简单,只需设置一css属性:opacity。opacity指“不透明度”,取值在0和1之间,0表示全透明,1表示完全不透明。

在代码中,我将边框的不透明度设置为0.5。

1 document.id(newCell).setStyle('opacity', 0.5);

弹出框(Popup)的淡入淡出效果

知道了不透明度opacity这一css属性,相应的使弹出框的该属性值在0与1之间有一个渐变的过程,即为淡入。反之为淡出。

在这里应用mootools中可控制任意css属性在两值之间过渡的tween类。

1 this.popupTable['tween']('opacity', '1');

关闭弹出框时,我们需将其销毁。结合淡出效果,这个销毁的动作应发生在淡出效果完成时。代码如下:

1 tween: {
2     onComplete: function () {
3         if (this.popupTable.getStyle('opacity') == 0)
4             this._cleanUp();
5     }.bind(this)
6 }

变身为alert

javascript中alert函数的功能仅仅是简单的提示、告之。基于当前自定义弹出框已经具有的功能,是很容易实现的。

 1 function openAlert() {
 2     var newP = new iSunPopup({ width: 380, height: 150, title: 'iSun alert', content: 'iSun alert content',         buttons: [
 3                 {
 4                     text: 'Yes',
 5                     clickHandler: function () {
 6                         this.close();
 7                     }
 8                 }]
 9     });
10 
11     newP.open();
12 }

变身为confirm

javascript中的confirm函数较alert复杂。在应用中,用户可以选择confirm()的Yes或No,然后代码做出相应的处理。这一选择过程是运行阻塞的,javascript运行时停滞在这个地方来等待用户的处理。

然而我们自定义的弹出框无法阻塞javascript运行,也就是说无法通过相同的机制来实现confirm效果。

正面冲锋不成,就只能小路包抄了。

弹出框中按钮单击事件代码是自定义的,我们只需将用户选择Yes或No的处理过程直接定义在按钮事件中也就模拟出了“确认”的效果。

 1 function openConfirm() {
 2     var newP = new iSunPopup({ width: 380, height: 150, title: 'iSun confirm', content: 'iSun confirm content',         buttons: [
 3                 {
 4                     text: 'No',
 5                     clickHandler: function () {
 6                         alert('你点击了No,此处可编写No逻辑。');
 7                         this.close();
 8                     }
 9                 },
10                 {
11                     text: 'Yes',
12                     clickHandler: function () {
13                         alert('你点击了Yes,此处可编写Yes逻辑。');
14                         this.close();
15                     }
16                 }]
17     });
18 
19     newP.open();
20 }

附示例代码:iSunPopup.rar

相关文章:

mootools系列:打造属于你自己的Popup(弹出框)——基本结构篇

mootools系列:打造属于你自己的Popup(弹出框)——扩展功能篇

转载于:https://www.cnblogs.com/isun/archive/2011/05/17/2049099.html

mootools系列:打造属于你自己的Popup(弹出框)——外观及应用篇相关推荐

  1. popup弹出html页面,Popup弹出框绑定添加数据事件(步奏详解)

    这次给大家带来Popup弹出框绑定添加数据事件(步奏详解),Popup弹出框绑定添加数据事件的注意事项有哪些,下面就是实战案例,一起来看一下. 逻辑 窗口P1中显示一组数据,并提供一个添加按钮 点击按 ...

  2. OpenLayers基础教程——popup弹出框

    1.前言 在OpenLayers中,一般使用ol.Overlay实现popup弹出框,弹出框一般用于显示地图上兴趣点的一些属性信息,如下图所示.下面开始介绍实现方法. 2.准备测试数据 在SqlSer ...

  3. WPF---->自定义控件添加Popup弹出框

    自定义控件,当点击自定义控件时弹出提示框 文章目录 重要属性 普通使用 自定义控件使用Popup 参考文档 重要属性 属性 名称 解释 使用方法 PlacementTarget 安置目标 Popup附 ...

  4. 简单实现Popup弹出框添加数据

    逻辑 窗口P1中显示一组数据,并提供一个添加按钮 点击按钮,弹出新的浏览器窗口P2,在其中添加一条数据并提交后,窗口P2自动关闭 新添加数据动态添加到窗口P1中并被选中 所需知识:JS BOM 窗口对 ...

  5. mootools系列:打造属于你自己的Popup(弹出框)——扩展功能篇

    为弹出框(Popup)添加"关闭(×)"按钮 如弹出框结构代码所示,关闭按钮标示"×"是放置在一div中的.使其具有关闭整个弹出框的功能,只要在创建该div时, ...

  6. JQUERY打造隐藏在左侧的弹性弹出菜单

    代码简介: 隐藏在左侧的弹性弹出菜单,从淘宝扣下来的,也可作为JAvaScript缓冲动画的典型教程.本弹性菜单可扩展性强,实际上不光可以做成菜单,也可布局一些图文混排的内容或一段视频,总之被弹出的内 ...

  7. FM实现F4帮助系列三:弹出框多筛选…

     FM实现F4帮助系列三:弹出框多筛选条件的搜索帮助(根据搜索帮助筛选字段) 函数:F4IF_GET_SHLP_DESCR F4IF_START_VALUE_REQUEST 效果图: 本例子代码: 找 ...

  8. 小解系列-解决WebUploader在谷歌浏览器下弹出框打开慢,在Bootstrap模态框内部多次点击才能触发的问题

    小解系列-解决WebUploader在谷歌浏览器下弹出框打开慢,在Bootstrap模态框内部多次点击才能触发的问题 参考文章: (1)小解系列-解决WebUploader在谷歌浏览器下弹出框打开慢, ...

  9. uni-app里的拓展组件uni ui与UI框架uView UI的Popup 弹出层的区别!

    uni-app里的拓展组件uni ui与UI框架uView UI的Popup 弹出层的区别! 文章目录 1.官网Popup 弹出层链接 2.属性不同 3.属性对照 4.弹出的方式 5.uView特有属 ...

最新文章

  1. .NET DLR 上的IronScheme 语言互操作IronScheme控制台输入中文的问题
  2. python语言的数字类型_基本数据类型数字
  3. html自动生成在线试题,HTML5测试题整理Ⅰ
  4. IOS – OpenGL ES 调节图像阴影 GPUImageHighlightShadowFilter
  5. 硬件电路基础(2)RF 一些概念
  6. 大学四年只学java_大学四年废了怎么办,不如来学java
  7. 【CVPR 2019】Strong-Weak Distribution Alignment for Adaptive Object Detection
  8. 抖音矩阵系统,抖音矩阵系统源码,抖音SEO源码。
  9. 什么是人工智能?(科普)
  10. iOS开发图片合成,多张图片合成一张图片
  11. Kibana关联ES查询数据
  12. [Erlang 0075] Bad value on output port 'tcp_inet'
  13. DirectX11 使用Cube Mapping 立方体环境贴图实现天空、物体反射效果
  14. 技术天才米勒 oracle,奇迹中的奇迹 WW之功能炫技篇
  15. invalid vcs root mapping 怎么解决_一加黑鲨华硕OPPO等手机root后微信指纹支付不可用怎么解决...
  16. 笃静守一,深耕匠设:2018“渲云杯”全国空间表现大赛颁奖盛典
  17. 网络发现自动关闭不能启用、无法启用文件和打印共享的解决办法
  18. 网络监控工具 开源_排名前5位的开源网络监控工具
  19. 优思学院|测量系统分析(MSA)中的偏倚和线性是什么?
  20. matlab nargin不对称,在matlab中错误使用 nargin 错误: 文件:dfun.m 行:30 列:4 未结束的...

热门文章

  1. Vue2(一):初识Vue、模板语法、数据绑定、el和data的两种写法、MVVM、数据代理、事件
  2. 秋日园博园之三-北京魅力
  3. 华为AC_DHCP配置
  4. 比尔-盖茨花费一亿元租下北京四合院观看奥运
  5. left join你不知道的东西
  6. 设计模式之装饰模式(Decorator)
  7. Mac vue-cli卸载、安装
  8. python3.6.7安装步骤
  9. consul 日志配置_consul命令
  10. [罗永浩与坚果:一支强弩的妥协]