`
chenshangge
  • 浏览: 87832 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类

Html自定义alert,confirm弹窗

 
阅读更多
系统自带的 alert confirm 弹窗 能阻塞进程,功能非常强大,但是样式受到限制,不能与项目的样式搭配。所以在具体项目中可能需要自定义弹窗。具体做法显示一个高度宽度百分之百的背景遮罩,然后在屏幕中间显示一个div,虽然不能做到与alert,confirm一样阻塞进程,但是也可以实现类似效果

<!-- 宽高百分之百的背景遮罩 -->
	<div class="mask-div"></div>
	<!-- 提示弹出框 -->
	<div class="alert-dialog">
		<div class="alert-title clearfix">
			<span>提示信息</span>
			<img th:src="@{/images/department/closed.png}" alt=""/>
		</div>
		
		<div class="alert-show clearfix">
			<div class="alert-content clearfix">
			</div>
		</div>

		<!-- 确定按钮 -->
		<div class="alert-btn clearfix">
			<button class="btn btn-default">确定</button>
			
		</div>
	</div>
	<!-- 选择弹出框  -->
	<div class="option-dialog">
		<div class="option-title clearfix">
			<span>提示信息</span>
			<img th:src="@{/images/department/closed.png}" alt=""/>
		</div>
		
		<div class="option-show clearfix">
			<div class="option-content clearfix">
			</div>
		</div>

		<!-- 确定按钮 -->
		<div class="option-btn clearfix">
			<button class="btn btn-default sure">确定</button>
			<button class="btn btn-default cancle">取消</button>
		</div>
	</div>


// 警告弹窗关闭
    $('.alert-dialog .alert-title img').on('click',function(){
        $('.mask-div').css('display', 'none');
        $('.alert-dialog').css('display', 'none');
    });
    //警告弹窗关闭
    $(".alert-btn button").on("click",function()
    {
    	$('.mask-div').css('display', 'none');
        $('.alert-dialog').css('display', 'none');
    });
    //选择弹窗关闭
    $('.option-dialog .option-title img').on('click',function(){
    	closeConfirm();
    });
    //选择弹窗关闭
    $(".option-btn .cancle").on("click",function()
    {
    	closeConfirm();
    });


//提示框
function alertShow(msg)
{
	$('.mask-div').css('display', 'block');
    $('.alert-dialog').css('display', 'block');
    $(".alert-content").text(msg);
    letDivCenter('.alert-dialog');
}
//选择框
function confirmShow(msg,obj,fn)
{
	$('.mask-div').css('display', 'block');
    $('.option-dialog').css('display', 'block');
    $(".option-content").text(msg);
    letDivCenter('.option-dialog');
    $(".option-btn .sure").bind("click",obj,fn);	//点击确定后续事件绑定
}

function closeConfirm()
{
	$('.mask-div').css('display', 'none');
    $('.option-dialog').css('display', 'none');
    $(".option-btn .sure").unbind();	//关闭弹窗,解除事件绑定
}

//让指定的DIV始终显示在屏幕正中间  
function letDivCenter(divName){   
    var top = ($(window).height() - $(divName).height())/2;   
    var left = ($(window).width() - $(divName).width())/2;   
    var scrollTop = $(document).scrollTop();   
    var scrollLeft = $(document).scrollLeft();   
    $(divName).css( { position : 'absolute', 'top' : top + scrollTop, left : left + scrollLeft } ).show();  
}


具体做法

//点击组织架构删除
$(".subdivision").on("click",".delete",function()
    {
    	var _self=$(this);
    	if(_self.data("deptId") == null)
    	{
    		alertShow("该节点不允许删除");
    		return;
    	}
    	
    	confirmShow("确认删除?",_self,function()
    	{
        	$.ajax({
        		url:"/department/deldepartment",
        		type:"post",
        		data:{departmentId:_self.data("deptId")},
        		success:function(data)
        		{
        			closeConfirm();
        			if(data == "Y")
        			{
        				_self.parent().parent().remove();
        				updateTree();	//跟新收缩图标显示隐藏
        			}
        			else
        			{
        				alertShow("请确认子部门是否已经清空");
        			}
        		}
        	});
        });
    	
    });

如图


点击组织架构删除,调用confirmShow 第一个参数是需要展示的字符串“确认删除?”,第二个参数是需要传递的参数obj(也可用data={}),第三个参数是一个函数fn,用来绑定确定按钮点击事件。即点击确定会执行fn,入参obj
  • 大小: 27.9 KB
分享到:
评论

相关推荐

    模态子窗口alert confirm 弹窗

    2. Confirm弹窗: Confirm对话框则提供了一种让用户进行是/否选择的方式。它有两个按钮:“确定”和“取消”。`window.confirm()`函数可以创建这样的对话框,例如: ```javascript var result = window.confirm(...

    layer模仿alert confirm弹窗效果

    在网页开发中,提供用户交互反馈是至关重要的,而`alert`和`confirm`弹窗则是最基础的交互方式之一。然而,原生JavaScript的`alert`和`confirm`功能较为简单,样式单一,不能满足现代网页设计的需求。这就催生了第三...

    JS提示框美化 alert confirm wait 美化

    在`msg.js`中,开发者可能通过事件监听和DOM操作来模拟`alert`和`confirm`的行为,当用户点击自定义对话框的按钮时,触发相应的回调函数,并返回预期的布尔值。 实现这样的功能通常涉及以下步骤: 1. 创建HTML结构...

    alert和confirm弹出框样式美化

    首先,我们不再直接使用`window.alert()`和`window.confirm()`方法,而是创建自定义的HTML结构来模拟这些对话框。创建一个包含消息内容、按钮等元素的模态框(modal),并将其隐藏,当需要弹出时通过JavaScript显示...

    alert和confirm弹出框样式美化2

    为了美化`alert`和`confirm`,开发者通常会使用自定义的模态窗口(modal)或者插件库,如Bootstrap的Modal、SweetAlert等。这些方法允许我们完全控制对话框的布局、颜色、字体、图标等元素,实现与网页整体风格一致...

    美化的alert弹窗

    SweetAlert是一个可自定义的、优雅的JavaScript警告对话框,它替代了浏览器原生的alert、confirm和prompt函数。这个库的设计理念是让弹窗更加友好,更符合现代网页的审美需求。在"压缩包子文件的文件名称列表"中提到...

    自定义样式的alert,confirm窗口

    自定义样式的alert,confirm窗口,可连续弹窗

    模拟弹窗控件,模拟Alert弹窗控件

    原生的弹窗如JavaScript的`alert()`、`prompt()`和`confirm()`函数虽然简单易用,但它们的样式和功能往往有限。因此,开发人员经常需要创建自定义的模拟弹窗控件来提升用户体验,这些控件可以拥有更丰富的设计、交互...

    js模拟Confirm、alert弹框,可以修改文字颜色。

    可以直接调用,操作方便,调用代码如下: jConfirm('Can you confirm this,&lt;span am red.&lt;/span&gt;?', 'Confirmation Dialog', function(r) { });

    自定义弹窗

    例如,可以创建一个`&lt;div&gt;`,并添加类名如`.custom-alert`、`.custom-confirm`和`.custom-loading`。 2. CSS样式:为每个弹窗类添加样式,包括位置、大小、颜色、边框、背景等,确保它们在页面上正确显示。加载框...

    自制confirm弹出框

    在网页开发中,为了增强用户体验和交互性,我们经常需要使用到各种弹出框,如确认对话框(Confirm)、警告对话框(Alert)以及自定义的弹出框。本示例主要关注的是“自制confirm弹出框”,这是一种自定义的删除确认...

    原生js写的弹窗效果(alert效果)

    本文将深入探讨如何使用原生JS创建类似`alert()`的自定义弹窗效果,以及如何实现跨浏览器兼容性,包括对IE、Firefox、Chrome和360等主流浏览器的支持。 首先,我们要明白`alert()`函数的基本用法。`alert()`是一个...

    美化js系统函数alert,confirm,prompt,并实现lightbox效果

    在JavaScript编程中,系统内置的`alert`、`confirm`和`prompt`函数是用于向用户展示信息、确认操作或获取输入的常用方法。然而,它们的默认样式通常较为简单,不符合现代网页设计的美观需求。为了提升用户体验,...

    Winform自定义消息框,好看的消息提示Alert源码

    Winform自定义消息框,好看的消息提示Alert源码,国外大神,很基础的实现,可以在此基础上进行优化和进一步调整。Winform控件、Winform优美提示框、消息框、Alert信息弹窗、Notification

    sweetAlert弹窗文件 JS和CSS

    SweetAlert是一款美观、可自定义的JavaScript提示对话框插件,它替代了浏览器原生的alert、confirm和prompt对话框,提供了更为丰富的样式和交互体验。这个压缩包包含的文件主要是JS(JavaScript)和CSS(层叠样式表...

    js重写alert和confirm

    在JavaScript中,`alert`和`confirm`是两种常见的弹窗函数,用于向用户显示信息或获取用户确认。`alert`通常用来展示一个简单的警告消息,而`confirm`则会弹出一个带有“确定”和“取消”按钮的对话框,等待用户做出...

    sweetAlert弹窗组件的使用

    SweetAlert是一款流行的JavaScript库,它提供了美观且可定制的弹窗功能,用于替代浏览器原生的`alert()`、`confirm()`和`prompt()`方法。在网页应用中,SweetAlert能够提供更加用户友好的交互体验,使得提示信息或者...

    html网页弹窗

    3. **Confirm弹窗** `confirm()`函数会显示一个带有“确定”和“取消”按钮的确认对话框。用户的选择可以通过返回值来判断,`true`表示点击了“确定”,`false`表示点击了“取消”。例如: ```javascript if ...

    alert去掉地址信息

    在实际的网页设计和开发中,除了使用`alert`,还可以考虑其他类型的对话框,如`prompt`(获取用户输入)或`confirm`(提供是/否选择),甚至可以使用自定义的模态对话框,这些通常能提供更好的用户体验,因为它们...

    jquery模拟alert的弹窗插件

    jQuery模拟的alert弹窗插件为开发者提供了更多的自定义空间,使得弹窗既能够传达信息,又能与用户进行更丰富的交互。本文将详细介绍如何使用jQuery实现模拟alert和confirm的弹窗插件,并探讨其实现原理。 一、基本...

Global site tag (gtag.js) - Google Analytics