10天没有写博客了,不知道为什么,心里感觉挺不舒服的,可能这是自己给自己规定要去完成的事情,没有按照计划执行,总会心里不怎么舒服。最近事情挺多的,终于今天抽空来更新一下博客了。

  今天写的是一个小插件。平时我们习惯于使用javascript中自带的confirm()函数做出一个弹窗的效果,但是问题在于这样的弹窗非常不美观,大大降低了网页的整体效果。

  好吧废话不多说,首先先来了解一下confirm()函数,下面应该注释得很清楚了。

if(confirm("我们去阿里转山吧,好吗?")){//想alert()方法一样,会弹出参
//数内容,不同的是,点击确定时会返回true,取消时会返回false
alert("好呀!那我们是不是应该准备点什么?");
//点击确定时执行的语句
}else{
alert("西藏有什么好玩的呀!还不如出国溜溜...");
//点击取消时执行的语句
}

  下面是我自己编写的一个小插件,先上css

 .show_info_contain {
position: fixed;
top: %;
left: %;
margin-left: -200px;
margin-top: -100px;
background-color: #;
border: #9E9E9E 1px solid;
border-radius: 3px;
width: 400px;
height: 200px;
color:#fff;
}
.show_info_tittle {
height: 40px;
line-height: 40px;
background-color: #;
border-bottom: 1px solid #FFF;
text-align: center;
font-size: 16px;
}
.show_info_content {
padding: 20px;
font-size: 16px;
text-align: center;
margin-top: 20px;
}
.tr {
text-align: right;
}
.btn_green1 {
padding: 8px 16px;
border-radius: 2px;
color: #;
text-decoration: none;
font-size: 16px;
display:inline-block; }
.green{
background-color: #90EB6A;
margin-right:75px;
}
.green:hover{
background-color: gray;
color:#fff;
}
.red{
background-color: #EC6868;
margin-right:80px;
}
.red:hover{
background-color: gray;
color:#fff;
}
.show_info_confirm_cancel{
margin-top:20px;
}

然后是javascript

function show_confirm(info,callback){//两个参数:info为需要显示的内容,callback为回调函数
var content='<div class="show_info_contain" id="contain-info-show">'
+'<div class="show_info_tittle">Prompt</div>'
+'<div class="show_info_content">'+info+'</div>'
+'<div class="show_info_confirm_cancel tr" id="show_info_confirm_cancel"><a href="javascript:void(0);" id="confirm-info-show" class="btn_green1 green">confirm</a><a href="javascript:void(0);" id="cancel-info-show" class="btn_green1 red">cancel</a></div>'
+'</div>';
$('body').append(content);
$('#show_info_confirm_cancel').click(function(e){
if(e.target==$("#confirm-info-show")[]){
$('#contain-info-show').remove();
callback.call(this,true);
}else if(e.target==$("#cancel-info-show")[]){
$('#contain-info-show').remove();
callback.call(this,false);
}
});
}

调用方式

show_confirm("我们去阿里转山,好吗?",function(result){
if(result==true){
alert("好啊,我们应该准备点什么?");
}else{
alert("西藏有什么好玩的呀!不如出国溜溜...");
}
});

效果图展示

仿javascript中confirm()方法的小插件的更多相关文章

  1. JavaScript中reduce()方法

    原文  http://aotu.io/notes/2016/04/15/2016-04-14-js-reduce/   JavaScript中reduce()方法不完全指南 reduce() 方法接收 ...

  2. JavaScript中的方法

    JavaScript中的方法 在JavaScript中,可以通过对象来调用对应的方法.在JavaScript中,有三个重要的window对象方法:用于显示警告信息的alert.用于显示确认信息的con ...

  3. JavaScript中的方法、方法引用和参数

    首先,我们来看一段代码,如果觉得不甚明白的,则本文会对你有益: var player = function (e) {             return (function f(m) {      ...

  4. 【mybatis】idea中 mybatis的mapper类去找对应的mapper.xml中的方法,使用插件mybatis-plugin

    idea中 mybatis的mapper类去找对应的mapper.xml中的方法,使用插件mybatis-plugin,名字可能叫Free mybatis-plugin 安装上之后,可能需要重启ide ...

  5. 详解 JavaScript 中 splice() 方法

    splice() 方法是一个比较少用的方法,但是功能确实很好,并且在我们 coding 的时候,经常有需要 splice() 方法,先介绍一下该方法. 在 JavaScript 中 splice() ...

  6. JavaScript中Array方法总览

    title: JavaScript中Array方法总览 toc: true date: 2018-10-13 12:48:14 push(x) 将x添加到数组最后,可添加多个值,返回数组长度.改变原数 ...

  7. javascript中concat方法深入理解

    最近在恶补js知识的时候,总是会因为js强大的语法而感到震撼.因为以前对前端方面的疏忽,导致了一些理解的错误.因此痛改前非,下定决心,不管做什么事情,都要有专研的精神. 在介绍前,抛出一个问题:如何将 ...

  8. 【转】十个JavaScript中易犯的小错误,你中了几枪?

    目录 常见错误一:对于this关键词的不正确引用 常见错误二:传统编程语言的生命周期误区 常见错误三:内存泄露 常见错误四:比较运算符 常见错误五:低效的DOM操作 常见错误6:在for循环中的不正确 ...

  9. JavaScript中的方法重载

    对js有些了解的人都知道,在js中根本就不存在像C#中的那种方法重载,而有的只是方法的覆盖,当你在js中敲入两个或多个同名的方法的时候,不管方法(函数)的参数个数怎么个不同,这个方法名只能属于最后定义 ...

随机推荐

  1. 创意HTML5文字特效 类似翻页的效果

    原文:创意HTML5文字特效 类似翻页的效果 之前在网上看到一款比较有新意的HTML5文字特效,文字效果是当鼠标滑过是出现翻开折叠的效果,类似书本翻页.于是我兴致勃勃的点开源码看了一下,发现其实实现也 ...

  2. Pro Aspnet MVC 4读书笔记(2) - The MVC Pattern

    Listing 3-1. The C# Auction Domain Model using System; using System.Collections.Generic; using Syste ...

  3. 新秀系列C/C++经典问题(四)

    一个主题:查找最小的k个元素 输入n个整数.输出当中最小的k个. . 分析:这道题最简单的思路莫过于把输入的n个整数排序,这样排在最前面的k个数就是最小的k个数. 仅仅是这样的思路的时间复杂度为O(n ...

  4. Extjs 4.2 右键菜单树节点(,选择逆,废除)

    写自己的最新版本号extjs4.2树节点的操作,记录它,可能在将来被用于. var tree = new Ext.tree.TreePanel({ flex: 1, animate: true, au ...

  5. RSA加密解密(PHP Demo)

    $private_key = '-----BEGIN RSA PRIVATE KEY----- MIICXQIBAAKBgQDpoODVtnSztGyb//p+g/Ob36jb3jzWzS2qovOj ...

  6. 解决 configure.ac:17: error: possibly undefined macro: AC_PROG_LIBTOOL

    当安装configure.ac:17: error: possibly undefined macro: AC_PROG_LIBTOOL If this token and others are le ...

  7. JavaScript之数组去重

    前言:昨天看到了别人发的帖子,谈到了面试题中经常出现的数组去重的问题.作为一个热爱学习.喜欢听老师话的好孩纸,耳边忽然想起来高中老师的谆谆教导:不要拿到题就先看答案,要先自己思考解答,然后再对照答案检 ...

  8. MySQL当您插入列无效的数据插入

    1.错误叙述性说明 com.mysql.jdbc.exception:jdbc4.MySQLSyntaxErrorException:Unknown column 'man' in 'field li ...

  9. Composer常见问题

    Composer常见问题 原文链接:Composer常见问题 安装了Composer后,运行composer --version,查看Composer的版本号.如果出现下面的提示,那么软件安装成功. ...

  10. [Python 2.7] Hello World CGI HTTP Server

    # CGI HTTP server ## Getting Started Python 2.x is preferred to this simple demo. I'm using Python 2 ...