jquery 模拟 alert 手机,pc,平板 3合一
$.kw = {
title : "System information", //默认标题 可修改
speed : 400, //默认速度 可修改
buttonName : "确定", //确定按钮默认名称 可修改
content : "Content",
//移除遮盖层
del : function () {
$("#alert-layer").remove();
},
//响应ESC键盘退出
esc : function () {
$(document).keyup(function (event) {
if (event.which == 27) {
$.kw.del();
}
});
},
//内容显示功能
alert : function (sContent, sTitle, callBack) {
var title = sTitle || this.title;
var layer = "<div id='alert-layer'><div id='alert-container'><div class='alert-top'></div><div class='alert-box'><div id='alert-title'>" + title + "<div id='alert-close' title='Close'></div></div><div id='alert-content'>" + sContent + "</div><div class='alert-button'><button id='alert-button'>" + this.buttonName + "</button></div></div><div class='alert-bottom'></div></div></div>";
$(layer).fadeIn(this.speed).appendTo("body");
this.setting();
$("#alert-button").focus();
$("#alert-close").bind("click", this.del); //移除层
$("#alert-button").bind("click", function () {
if (callBack) {
callBack();
}
$.kw.del();
}); //移除层
this.esc();
},
//框拖动功能
move : function () {
$("#alert-title").mousedown(function (event) {
var l = parseInt($("#alert-container").css("left")),
t = parseInt($("#alert-container").css("top"));
x = event.pageX - l;
y = event.pageY - t;
$("body").bind("mousemove", function (event) {
$("#alert-container").css({
"left" : (event.pageX - x)
});
$("#alert-container").css({
"top" : (event.pageY - y)
});
//$("#alert-container").fadeTo(0,0.9)
});
});
$("body").mouseup(function () {
$("body").unbind("mousemove");
//$("#alert-container").fadeTo(0,1)
});
},
//设置背景层与内位置
setting : function () {
var bcw = $(window).width(),
bch = $(window).height(),
bsh = $(document).height(),
aw = $("#alert-container").width() / 2,
ah = $("#alert-container").height() / 2;
$("#alert-layer").css("height", bsh);
$("#alert-container").css({
"top" : bch / 2 - ah,
"left" : bcw / 2 - aw
});
}
//$.kw End
};
$(window).resize(function() {
if($("#alert-layer")){
$("#alert-layer").css("height", 0);
var strheight= $(document).height();
$("#alert-layer").css("height", strheight);
var aw = $("#alert-container").width() / 2,
ah = $("#alert-container").height() / 2;
$("#alert-container").css({
"top" : $(window).height() / 2 - ah,
"left" : $(window).width() / 2 - aw
});
}
});
/*模拟alert样式*/
#alert-layer button:focus {
border: 1px solid #AAA!important;
background: #789!important;
color: white;
outline: none
}
#alert-layer {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
color: #333;
line-height: 1;
z-index: 10000;
background: rgba(0,0,0,0.2)
}
#alert-layer #alert-container {
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
padding: 10px;
width: 30%;
position: fixed;
_position: absolute;
}
#alert-layer .alert-top {
background: #F1F1F1;
height: 10px;
border-radius: 3px 3px 0 0;
-moz-border-radius: 3px 3px 0 0;
-webkit-border-radius: 3px 3px 0 0;
}
#alert-layer .alert-bottom {
background: #F1F1F1;
height: 10px;
border-radius: 0 0 3px 3px;
-moz-border-radius: 0 0 3px 3px;
-webkit-border-radius: 0 0 3px 3px;
}
#alert-layer #alert-title {
font-size: .875em;
height: 30px;
line-height: 25px;
padding: 0 10px;
position: relative;
font-weight: bold;
background: #F1F1F1;
border-bottom: 1px solid #B9B9B9;
}
#alert-layer #alert-close {
background: url(/Images/icon_close.png) no-repeat center center;
width: 25px;
height: 25px;
position: absolute;
cursor: pointer;
right: 2px;
top: 0px;
}
#alert-layer .alert-button {
padding: 5px 10px;
text-align: right;
border-top: 1px solid #B9B9B9;
background: #F1F1F1;
}
#alert-layer #alert-content {
padding: 10px 15px;
font-size:.725em;
}
.alert-box {
background: #fff;
}
#alert-layer button {
padding: 5px;
border: 1px solid #CCC;
margin: auto 5px;
border-radius: 2px;
min-width: 60px;
font-size:.725em;
}
#alert-layer h1, #alert-layer h2, #alert-layer h3, #alert-layer h4 {
margin: 10px auto;
font-size: 1em
}
根据 http://kingwell-leng.iteye.com/blog/1592881 稍微加工一下。主要功劳还是原作者。 贴上代码.
这个段代码 再手机,pc测试均无问题 可直接复制使用。当时在做响应式网站时用到的。pc站的alert 太难看了。所以用jquery模拟一个。
jquery 模拟 alert 手机,pc,平板 3合一的更多相关文章
- 给Jquery添加alert,prompt方法,类似系统的Alert,Prompt,可以响应键盘,支持拖动
我们在调用系统的Alert,prompt的弹出提示时,不同的系统会有不同的提示框,视觉效果不统一,而且不好看,功能单一,现在我们通过Jquery模拟Alert,prompt,现实统一视觉效果,而且内容 ...
- [转]jQuery插件实现模拟alert和confirm
本文转自:http://www.jb51.net/article/54577.htm (function () { $.MsgBox = { Alert: function (title, msg) ...
- 自编jQuery插件实现模拟alert和confirm
现在绝大多数网站都不用自带的alert和confirm了,因为界面太生硬了.因此这个插件就这样产生了自己定制一个的想法...... 啥也不说,先上图,有图有真相 :) 现在绝大多数网站都不用自带的al ...
- wordpress如何判断手机、平板还是PC并显示对应的内容-Mobile Detect
wordpress如何判断是手机.平板还是PC访问,并针对性的显示特定的内容?Mobile Detect 这个轻量级PHP 类库能够很好的实现这个功能.而且Mobile Detect也有wordpre ...
- Jquery判断当前时PC端,移动端,平板端屏幕
$(function(){ // console.log(navigator.userAgent); var os = function (){ var ua = navi ...
- FineUI(专业版)v3.0.0 发布,手机、平板和桌面全支持!
FineUI(专业版)v3.0.0 已经正式发布,全面支持手机.平板和桌面! 自 2008 年 4 月发布第一个版本,我们持续更新了 126 个版本,拥有 16000 多位注册用户,130 ...
- 模拟alert和confirm
啥也不说,先上图,有图有真相 :) 现在绝大多数网站都不用自带的alert和confirm了,因为界面太生硬了.因此这个插件就这样产生了... 来看插件的实现代码吧: (function () { $ ...
- Android手机平板两不误,使用Fragment实现兼容手机和平板的程序
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8744943 记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其 ...
- 【Android 界面效果17】Android手机平板两不误,使用Fragment实现兼容手机和平板的程序
记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad.然后为了节省人力,公司无节操地让Android手机和Android Pad都由 ...
随机推荐
- windows 安装mysql 步骤
Windows 安装mysql 5.7.12教程 1.在官网下载mysql5.7.12.zip并解压 复制默认配置文件my-default.ini,并命名为my.ini 使用记事本打开,修改如下配置 ...
- C# DateTime转Json汇总
DateTime转换成json的时候容易出现不想要的格式,在网上搜索了相关的解决方法copy如下: 参考http://www.newtonsoft.com/json/help/html/DatesIn ...
- QT征程之初识qt
下载 https://www.qt.io/cn/download-open-source/ 下载QT离线安装包 Qt 5.5.1 for Linux 32-bit (546 MB) (info ...
- 修改Shp文件名称
IWorkspaceFactory factory = new ShapefileWorkspaceFactoryClass(); IWorkspace pworkspace = factory.Op ...
- MLA Handbook for Writers of Research Papers笔记
MLA Handbook for Writers of Research Papers.7th ed.New York:MLA,2009.print.还有一本,留待阅读MLA Style Manual ...
- iOS中线程同步基本详解
为什么使用线程同步技术:多个线程是同时执行的 如果多个线程同时操作一个资源 会造成此资源的数据错乱 线程同步简介 线程同步,多条线程按顺序地访问某个资源 注意:此处的同步不是一起执行的意思 是一个一个 ...
- HTML5离线篇收藏--- cache manifest
自从翻译了<解读 HTML5:建议.技巧和技术>,就一直没有时间去看 HTML5 相关的东西.上周一次偶然的工作间隙折腾了下 Cache Manifest .当时直接拿博客当测试环境,虽然 ...
- Python:进程
由于GIL的存在,python一个进程同时只能执行一个线程.因此在python开发时,计算密集型的程序常用多进程,IO密集型的使用多线程 1.多进程创建: #创建方法1:将要执行的方法作为参数传给Pr ...
- Android进程间的通信之AIDL
Android服务被设计用来执行很多操作,比如说,可以执行运行时间长的耗时操作,比较耗时的网络操作,甚至是在一个单独进程中的永不会结束的操作.实现这些操作之一是通过Android接口定义语言(AIDL ...
- 修复IE9.0下PlaceHolder 属性问题js脚本
在开发前端系统时候碰到这种兼容问题,以下是个人解决方案,希望能给其他人带来帮助: var JPlaceHolder = { //检测 _check: function () { return 'pla ...