js确认删除对话框效果的示例代码


Posted in Javascript onFebruary 20, 2014

效果如下:

js确认删除对话框效果的示例代码

css文件delcss.css

代码如下:

*{ margin:0; padding:0;}
#div1{ width:300px; height:100px; border-radius:10px; background:#f60; box-shadow:5px 5px 10px #ccc; position:absolute; left:50%; margin-left:-150px; z-index:2; opacity:0; filter:alpha(opacity:0); display:none;}
#div1 h3{ height:20px; background:#60f;}
#overlay{ width:100%; height:100%; background:#ccc; position:absolute; left:0; top:0; opacity:0; z-index:1; display:none;}
#closeConfirm{ width:80px; height:20px; line-height:20px; background:#ccc; border-radius:5px; display:block; text-decoration:none; color:#000; text-align:center; position:absolute; bottom:10px; right:10px;}
#trueConfirm{width:80px; height:20px; line-height:20px; background:#ccc; border-radius:5px; display:block; text-decoration:none; color:#000; text-align:center; position:absolute; bottom:10px; right:100px;}
#confirmCon{ text-align:center; color:#ccc; height:40px; line-height:40px;}

js文件confirmPop.js

代码如下:

function ConfirmPop(delObj,confirmMain,overlay,binkTitle,closeConfirm,trueConfirm){
    this.oDelObj=document.getElementById(delObj);
    this.oDiv=document.getElementById(confirmMain);
    this.oOverlay=document.getElementById(overlay);
    this.oTitle=document.getElementById(binkTitle);
    this.oCloseConfirm=document.getElementById(closeConfirm);
    this.oTrueConfirm=document.getElementById(trueConfirm);
    this.oConStart=0;
    this.oConItarget=0;
    this.init();
}
ConfirmPop.prototype={
    init:function(){
        this.oConStart=parseInt((document.documentElement.clientHeight-this.oDiv.offsetHeight)/2-100);
        this.oConItarget=parseInt((document.documentElement.clientHeight-this.oDiv.offsetHeight)/2-70);
        this.oDiv.style.top=this.oConStart+'px';
        document.title=this.oConStart+', '+this.oConItarget;
        var _this=this;
        this.oDelObj.onclick=function(){
            _this.confirmShow();
        }
        this.oOverlay.onclick=function(){
            _this.titleBink();
        }
        this.oCloseConfirm.onclick=this.oTrueConfirm.onclick=function(){
            _this.confirmHide();
        }    },
    confirmShow:function(){
        this.oOverlay.style.display='block';
        this.oDiv.style.display='block';
        striveMove(this.oOverlay,{ opacity:30});
        striveMove(this.oDiv,{top:this.oConItarget, opacity:100})
    },
    titleBink:function(){
        var _this=this;
        var iLightTimer=null;
        var i=0;
        iLightTimer=setInterval(function(){
            if(i%2){
                _this.oTitle.style.background='#60f';
            }else{
                _this.oTitle.style.background='#ccc';    
            }
            i++;
            if(i>5){
                clearInterval(iLightTimer);
            }
        },50)    
    },
    confirmHide:function(){
        striveMove(this.oOverlay,{opacity:0});
        this.oOverlay.style.display='none';
        striveMove(this.oDiv,{top:this.oConStart, opacity:0});    
    }
}
function  striveMove(obj,json,fn){clearInterval(obj.iTimer);obj.iTimer=setInterval(function(){var  bStop=true;for(var  attr  in  json){var  iCur=0;if(attr=='opacity'){iCur=Math.round(parseFloat(getStyle(obj,attr))*100);}else{iCur=parseInt(getStyle(obj,attr));}var  iSpeed=(json[attr]-iCur)/8;iSpeed=iSpeed>0?Math.ceil(iSpeed):Math.floor(iSpeed);if(attr=='opacity'){obj.style.filter='alpha(opacity:'+(iCur+iSpeed)+')';obj.style.opacity=(iCur+iSpeed)/100;}else{obj.style[attr]=iCur+iSpeed+'px';}if(iCur!==json[attr]){bStop=false;}}if(bStop){clearInterval(obj.iTimer);if(fn){fn();}}},30)}function  getStyle(obj,attr){return  obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,false)[attr];}

使用方法

1.引入文件

<link rel="stylesheet" type="text/css" href="delcss.css"/>
<script src="confirmPop.js"></script>

2.调用方法
<script>
window.onload=window.onresize=function(){
    new ConfirmPop('btn','div1','overlay','title','closeConfirm','trueConfirm');
}
</script>

3.做好准备工作
<div id="div1">
    <h3 id="title"></h3>
    <div id="confirmCon">
        您确定要进行删除操作么?
    </div>
    <a href="###" id="trueConfirm">确定</a>
    <a href="###" id="closeConfirm">取消</a>
</div>
<div id="overlay"></div>

这段代码是提供空间的,自己写的div代码。其中确定框中的a标签中,可以把删除的地址填入其中。点击确定时,就跳转到删除的页面方法中了。

这段代码可以放入任何位置。不占空间。作者很犀利。

4.导火线,触发器

<a  id="btn" ><img src="/images/default/right/ico_del.gif" /></a>

将删除图标加上id="btn",这样就会触发删除效果了。

如果想修改样式,可以到css中进行修改,调整。

小结:这样的js删除就比浏览器自带的弹出框美观一些了。作者用短短3k的js就写出这种效果,真心厉害。

ps,我只是拿来的。

缺点,只能针对一个内容,进行删除。因为所有的都是针对id的,单一化了。

Javascript 相关文章推荐
JavaScript 动态改变图片大小
Jun 11 Javascript
js 学习笔记(三)
Dec 29 Javascript
boxy基于jquery的弹出层对话框插件扩展应用 弹出层选择器
Nov 21 Javascript
jQuery实现流动虚线框的方法
Jan 29 Javascript
jQuery在ul中显示某个li索引号的方法
Mar 17 Javascript
基于JavaScript实现网页倒计时自动跳转代码
Dec 28 Javascript
jQuery中checkbox反复调用attr('checked', true/false)只有第一次生效的解决方法
Nov 16 Javascript
JSON与js对象序列化实例详解
Mar 16 Javascript
jquery使用FormData实现异步上传文件
Oct 25 jQuery
JQuery判断radio单选框是否选中并获取值的方法
Jan 17 jQuery
Javascript实现贪吃蛇小游戏(含详细注释)
Oct 23 Javascript
three.js如何实现3D动态文字效果
Mar 03 Javascript
多种方法实现load加载完成后把图片一次性显示出来
Feb 19 #Javascript
jquery无刷新验证邮箱地址实现实例
Feb 19 #Javascript
js左右弹性滚动对联广告代码分享
Feb 19 #Javascript
javascript异步编程的4种方法
Feb 19 #Javascript
点击显示指定元素隐藏其他同辈元素的方法
Feb 19 #Javascript
javascript函数重载解决方案分享
Feb 19 #Javascript
一个CSS+jQuery实现的放大缩小动画效果
Feb 19 #Javascript
You might like
php生成随机密码的三种方法小结
2010/09/04 PHP
PHP static局部静态变量和全局静态变量总结
2014/03/02 PHP
php 三元运算符实例详细介绍
2016/12/15 PHP
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
PHP实现求解最长公共子串问题的方法
2017/11/17 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
2019/05/13 PHP
浅析PHP echo 和 print 语句
2020/06/30 PHP
firefox中JS读取XML文件
2006/12/21 Javascript
Javascript的一种模块模式
2010/09/08 Javascript
javascript工具库代码
2012/03/29 Javascript
20款非常优秀的 jQuery 工具提示插件 推荐
2012/07/15 Javascript
jquery图片倾斜层叠切换特效代码分享
2015/08/27 Javascript
浅析JS运动
2015/12/28 Javascript
jQuery中Ajax全局事件引用方式及各个事件(全局/局部)执行顺序
2016/06/02 Javascript
AngularJS实现的2048小游戏功能【附源码下载】
2018/01/03 Javascript
解决vue单页路由跳转后scrollTop的问题
2018/09/03 Javascript
JQuery复选框全选效果如何实现
2020/05/08 jQuery
uni-app 自定义底部导航栏的实现
2020/12/11 Javascript
Handtrack.js库实现实时监测手部运动(推荐)
2021/02/08 Javascript
python实现监控windows服务并自动启动服务示例
2014/04/17 Python
python实现根据窗口标题调用窗口的方法
2015/03/13 Python
python使用装饰器和线程限制函数执行时间的方法
2015/04/18 Python
Windows上配置Emacs来开发Python及用Python扩展Emacs
2015/11/20 Python
浅谈Python2获取中文文件名的编码问题
2018/01/09 Python
python将字符串以utf-8格式保存在txt文件中的方法
2018/10/30 Python
浅谈PyTorch的可重复性问题(如何使实验结果可复现)
2020/02/20 Python
VSCODE配置Markdown及Markdown基础语法详解
2021/01/19 Python
Deichmann英国:德国鞋类零售商
2021/01/30 全球购物
JDBC操作数据库的基本流程是什么
2014/10/28 面试题
酒店人事专员岗位职责
2013/12/19 职场文书
大学理论知识学习自我鉴定
2014/04/28 职场文书
跑操口号
2014/06/12 职场文书
2015年党员公开承诺书范文
2015/01/22 职场文书
2015年食品安全宣传周活动总结
2015/07/09 职场文书
Java spring单点登录系统
2021/09/04 Java/Android
python和Appium的移动端多设备自动化测试框架
2022/04/26 Python