基于jQuery的弹出警告对话框美化插件(警告,确认

前不久在官方网站是看见这个插件,所以今天趁有空就看了一下,随便给大家共享一下。也许你早已知道了

,如果是这样那请跳过,不要拍砖。

这个Jquery插件的目的是替代JavaScript的标准函数alert(),confirm(),和 prompt()。这个插件有

如下这些特点:

1:这个插件可以使你可以支持你自己的css制定。使你的网站看起来更专业。

2:允许你自定义对话框的标题。

3:在IE7中,可以使你避免使用JavaScript 的prompt()函数带来的页面重新加载。

4:这些方法都模拟了Windows的模式对话框。在你改变改变浏览器窗口大小时候,它能够自适应用户

窗口的调整。

5:如果你引入了jQuery UI Draggable plugin插件,那这个插件也可以被自由拖动。

先在这里说插件的下载地址,以供有需之人下载:



一:首先在<head></head>导入JQuery,jquery.ui.draggable
和jquery.alerts的 css、js文件。
<script src="https://www.jb51.net/path/to/jquery.js" type="text/javascript"></script>

<script src="https://www.jb51.net/path/to/jquery.ui.draggable.js" type="text/javascript"></script>

<script src="https://www.jb51.net/path/to/jquery.alerts.js" type="text/javascript"></script>

<link href="https://www.jb51.net/path/to/jquery.alerts.css" type="text/css" media="screen" />

为了在iE中正确的使用alert插件,你还得在Page中加入何时DTD:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "

">

二:使用
我们可以用下列方式来使用这个Jquery插件。

jAlert(message, [title, callback])
jConfirm(message, [title, callback])
jPrompt(message, [value, title, callback])
注:不同于Javascript标准函数,我们可以在message中使用HTML参数显示你的提示信息。

三:兼容性:
alert插件要求我们必须使用JQuery1.2.6或以上的jQuery包。

已经被测试能够在IE6、IE7、FF2、FF3、Safari 3 、Chrome 、Opera 9浏览器上很好的运行。

四:Demo:注:在Demo中么有引入dragonable插件所以不能拖拽
Test Alert

复制代码 代码如下:


jAlert('This is a custom alert box;
<a href=https://www.jb51.net/article/\"http://www.cnblogs.com/whitewolf/\">
本示例来自破浪博客</a>',
'Alert Dialog');


Test Confirm

复制代码 代码如下:


jConfirm('Can you confirm this?
<a href=https://www.jb51.net/article/\"http://www.cnblogs.com/whitewolf/\">
本示例来自破浪博客</a>',
'Confirmation Dialog', function(r) {
jAlert('Confirmed: ' + r, 'Confirmation Results');
});


Test Prompt

复制代码 代码如下:


jPrompt('Type something:<
a href=https://www.jb51.net/article/\"http://www.cnblogs.com/whitewolf/\">
本示例来自破浪博客</a>',
'WhiteWolf', 'Prompt Dialog', function(r) {
if( r ) alert('You entered ' + r);
});


关于jConfirm回传的解决方案
我趁今天有空就考虑了下。我觉得lastwinter问这个问题应该是关于ASP.NET的回传问题,这主要是jConfirm这个为CallBack回调,
他是异步的,并非同步。
所以我尝试了下阻止事件的冒泡,并当选择为true是自动回传。用LinkButton测试(Button不同于这个解决的方案在后面解释)
现贴出LinkButton的CODE DEMO:
关于jConfirm回传DEMO

复制代码 代码如下:


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="https://www.jb51.net/Script/jquery-1.3.2.min.js" type="text/javascript"></script>
<script src="https://www.jb51.net/Script/jquery.alerts-1.1/jquery.alerts.js" type="text/javascript"></script>
<link href="https://www.jb51.net/Script/jquery.alerts-1.1/jquery.alerts.css" type="text/css" />
</head>
<body>
<form runat="server">
<asp:LinkButton runat="server" >LinkButton</asp:LinkButton>
<asp:Label runat="server" Text="Label"></asp:Label>
<div>
</div>
</form>
<script type="text/javascript">
$(document).ready(function() {
$("#<%=LinkButton1.ClientID %>").click(function(event) {
jConfirm("test", "test jconfirm", function(r) {
if (r) {
<%= Page.ClientScript.GetPostBackClientHyperlink(LinkButton1,"") %>
}
});
event.stopPropagation();
event.preventDefault();
});
});
</script>
</body>
</html>


LinkButton1 Button Click CODE

复制代码 代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdxxys.html