【Origin】jquery.barddialog.js
/// <reference path="jquery-2.1.1.min.js" />
/**
* @license jquery.bardDialog 1.0.0
* (c) 1986-infinity China, Shanghai. CalosChen
* License: MIT
* Description:A responsive dialog box which provides several simple interface methods. Free to use, do whatever you want to it, just customize it.
*/ ; (function (clothes, $) {
'use strict';
var female = {
bed: function () {
return '<div class="dlgbed"></div>';
},
blanket: function () {
return '<div class="dlgblanket" />';
},
costume: function () {
return '<div class="dlgcostume"></div>';
},
hat: function (name) {
return '<h2 class="dlghat">' + name + '</h2>'
},
body: function (discourse) {
return '<div class="dlgbody">' + discourse + '</div>'
},
feet: '<div class="dlgfeet"><button class="promise">OK</button><button class="deny">Cancel</button></div>'
};
var dialog = function (dummy) {
var birthday = new Date().getTime();
var $bed = $(female.bed());
var $blanket = $(female.blanket());
var $costume = $(female.costume());
var $makeup = $costume.addClass(birthday.toString());
var world = { height: $(window).height(), width: $(window).width() };
var treasure = {};
var Calos = {
name: 'discourse', discourse: 'discourse', permit: function () {
$bed.remove();
},
repel: function () {
$bed.remove();
}
};
var God = $.extend({}, Calos);
dummy = $.extend(God, typeof dummy === 'string' ? { discourse: encodeURIComponent(dummy) } : dummy);
var male = {
shift: function () {
treasure = {
bed: $bed,
blanket: $blanket,
costume: $costume,
hat: $makeup.find('.dlghat'),
body: $makeup.find('.dlgbody'),
promise: $makeup.find('.promise'),
deny: $makeup.find('.deny')
};
},
birth: function (dummy) {
var bone = female.hat(dummy.name) + female.body(decodeURIComponent(dummy.discourse)) + female.feet;
$bed.append($blanket).append($costume.html(bone)).appendTo('body');
male.shift();
return this;
},
masquerade: function () {
treasure.bed.css({
opacity: 1,
'z-index': 1000,
height: world.height,
width: '100%',
position: 'fixed',
top: 0,
left: 0
});
treasure.blanket.css({
background: '#000',
opacity: 0.5,
height: world.height,
width: '100%',
position: 'absolute',
top: 0,
left: 0
});
treasure.costume.css({
background: 'white',
position: 'relative',
'border-radius': '5px',
padding: '0.3em',
margin: '30px auto',
'min-width': '15%',
width: 'string' !== typeof dummy.discourse && $(dummy.discourse).width() ? ($(dummy.discourse).width() + 50) : world.width / 3
});
treasure.costume.find('.dlgbody').css({
'max-height': world.height - 300, padding: '0.1em',
overflow: 'auto'
});
var cosmetics = '<style type="text/css">.dlgbed .dlgcostume {border:1px solid #CCCCCC;} .dlgbed div{overflow:auto;} .dlgbed button { float:right; margin-left:1em; height:3em;color:white;background-color: #286090; border:none;padding:1em; border-radius:5px } .dlgbed .dlghat{ border-bottom: 1px solid #CCCCCC;padding-left:0.5em;margin-feet:0.5em;} .dlgbed .dlgbody{padding:0 0 0 0.5em; overflow:hidden;} .dlgbed .dlgfeet{border-top: 1px solid #CCCCCC;padding-top: 0.5em;} </style>';
$(cosmetics).appendTo('head');
}
};
male.birth(dummy).masquerade();
treasure.promise.on('click', function () {
dummy.permit();
Calos.permit();
});
treasure.deny.on('click', function () {
dummy.repel();
Calos.repel();
});
return this;
};
clothes.dialog = dialog;
clothes.info = function (discourse) {
dialog({
name: 'Info', discourse: discourse
});
};
clothes.question = function (problem, agree) {
dialog({
name: 'Prompt', discourse: problem, promise: agree
});
};
clothes.warn = function (admonish) {
dialog({
name: 'Warning', discourse: admonish
});
};
clothes.danger = function (hazard) {
dialog({
name: 'Danger', discourse: hazard
});
};
}
)(this.bardDialog = this.bardDialog || {}, jQuery); $(function () {
bardDialog.dialog({
name: 'Hello', discourse: '<div style="">Have fun, bro.</div>', repel: function () {
alert('Oh, you repel it!');
}, permit: function () {
alert('Oops, you permit it!');
}
});
});
【Origin】jquery.barddialog.js的更多相关文章
- 【转】jquery.cookie.js的使用
Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是 ...
- 【转】jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- 【学习】jquery.placeholder.js让IE浏览器支持html5的placeholder
type为text或password的input,其在实际应用时,往往有一个占位符,类似这样的: 在没有html5前,一般写成value,用js实现交互,文本框获得焦点时,提示文字消失,失去焦点时,文 ...
- 【前端】:jQuery下
前言: 接上一篇博客: [前端]:jQuery上 一.jQuery属性操作 ① attr(设置或返回自定义属性值) input.select.textarea框中的内容, 可以通过attr来获取,但是 ...
- 【JavaScript】jQuery
No1: jQuery能帮我们干这些事情: 消除浏览器差异:你不需要自己写冗长的代码来针对不同的浏览器来绑定事件,编写AJAX等代码: 简洁的操作DOM的方法:写$('#test')肯定比docume ...
- 【笔记】jQuery插件开发指南
原文链接:http://www.cnblogs.com/Wayou/p/jquery_plugin_tutorial.html (有部分增删和修改) jQuery插件开发模式 软件开发过程中是需要一定 ...
- 【jquery】jquery.cookie.js 的使用指南
之前有写过一篇原生 js 的 cookie 介绍,并且最后封装成 cookie.js 具体内容点击传送门. jquery.cookie.js 是一款轻量级的 cookie 插件,可以读取,写入和删除 ...
- 【转载】jQuery全屏滚动插件fullPage.js
文章转载自dowebok http://www.dowebok.com/ 原文链接:http://www.dowebok.com/77.html 简介 如今我们经常能见到全屏网站,尤其是国外网站.这些 ...
- 【jQuery】jquery.metadata.js验证失效
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
随机推荐
- CDH商业版本的搭建(hadoop+hive+sqoop)
一:准备工作 1.步骤 1)hadoop ->下载解压 ->修改配置文件 ->hadoop-env JAVA_HOME ->core-site fs.defaultFS had ...
- Difference between _, __ and __xx__ in Python
When learning Python many people don't really understand why so much underlines in the beginning of ...
- DevExpress的所有功能介绍
https://www.devexpress.com/Subscriptions/New-2016-2.xml?utm_source=AnnounceTry&utm_medium=WhatsN ...
- 使用VC2005编译真正的静态Qt程序
首先,你应该该知道什么叫静态引用编译.什么叫动态引用编译.我这里只是简单的提提,具体的可以google一下. 动态引用编译,是指相关的库,以dll的形式引用库.动态编译的Exe程序尺寸比较小,因为相关 ...
- 设计模式:组合模式(Composite)
定 义:将对象组合树形结构以表示“部分-整体”的层次结构.组合模式使得用户对单个对象和组合对象使用具有一致性. 结构图: Component类: abstract class Component ...
- Ubuntu 12.04+DarwinStreamingSrvr6.0.3 架设流媒体服务器
1.安装Ubuntu 12.04操作系统,网上很多教程.. 2.打开终端,下载darwin源代码DarwinStreamingSrvr6.0.3-Source.tar,补丁patch dss-6.0. ...
- python入门 2014-3-21
刚吃完饭,写一会python 准备去上课,哇咔咔! 1.python是动态类型语言,也就是说 不需要预先声明变量的类型. 不支持 自增++ , 自减--
- Group GridView:用于.Net的分组显示的GridView
我的项目需要一个可以分组显示的GridView,我不会写,上网找了一圈,最终在国外的网站上找到的这个,比较符合我的要求,但它的分页得重写,它写了能分页,但我发现它的分页功能事实上并没有实现,也不知道是 ...
- MySQL注释符
mysql注释符有三种:1.#...(注释至行末,推荐)2.-- ...(两条短线之后又一个空格)3./*...*/(多行注释) 1.
- ie8兼容border-radius方法
<!doctype html><html> <head> <meta charset="utf-8" /> &l ...