FirstBlood-jquery弹窗插件

嗯,这是第一次用插件形式写的弹出提示窗口,经验尚浅,写得也不好。

/*-------------------------------
*	Author: D.pan
*   Date: 2015/6/15
*	Version: 1.0
*   Description: 弹窗插件
-------------------------------*/
;(function($){

	var defaultSetting = {
		title : '', //标题
		closeText : '关闭', //关闭按钮
		content : '', //内容
		boxId : 'popDiv', //弹窗id
		closeId : 'closeBtn', //关闭按钮id
		boxClassName : 'popDiv', //外层容器样式
		titleClassName : 'titleDiv', //标题行样式
		closeBtnClassName : 'closeBtn', //关闭按钮样式
		contentClassName : 'content', //内容样式

	}

	$.fn.extend({
			'popUp':function(obj){
				new popUp(obj?jQuery.extend(defaultSetting,obj):defaultSetting);
				return this;
			}
	});

	function popUp(obj)
	{
		var $popUp = createDiv( '',  obj.boxClassName, obj.boxId );
		var $title = createDiv( obj.title, obj.titleClassName, '' );

		$title.append( createDiv( obj.closeText, obj.closeBtnClassName, obj.closeId ) );
		$popUp.append( $title );
		$popUp.append( createDiv( obj.content, obj.contentClassName ) );       

		if( $( '#'+obj.boxId ).length <= 0 ){
			$('body').append($popUp);
			$('#' + obj.closeId ).click(function(){
				$('#'+obj.boxId).remove();
			});
		}
	}

	function createDiv( con, cName, id ){
		return $('<div class="'+(cName?cName:'')+'" id='+(id?id:'')+'>'+con+'</div>');
	}

})(jQuery);

Demo页面:

<html>
<head>
	<title>弹窗插件</title>
	<meta http-equiv="Content-type" content="text/html;charset=utf-8" />
 	<script type="text/javascript" src="JS/jquery-1.9.1.min.js"></script>
 	<script type="text/javascript" src="JS/popUp.js"></script>
 	<link rel="stylesheet" type="text/css" href="css/css.css" />
	<style type="text/css">
		.showDiv
		{
			width:80%;
			margin:5% auto;
			max-width: 800px;

			border:1px solid #ccc;
			box-shadow: 5px 5px 5px #ccc;
			padding:20px;
		}
	</style>
</head>
<body style="height:1200px">
	<div class="showDiv">
		<input type="button" id="test" value="测试" />
	</div>
</body>

<script type="text/javascript">
	$(function(){
		$("#test").click(function(){

			var obj = {
				title: '弹出窗口',
				content : '这是我写的第一个插件'
			}

			$(this).popUp(obj);
		});
	});
</script>
</html>

CSS:

/*弹窗样式*/
.popDiv
{
    position: fixed;

    left:0;
    right: 0;
    margin:auto;

    max-width: 500px;
    width:80%;

    background-color: #fff;
    border:1px solid #ccc;
    box-shadow: 0 0 5px #ccc;
    font-size:14px;
    padding:5px;
}

/* 标题层 */
.titleDiv
{
   border-bottom: 1px solid #ccc;
   padding:5px;
   height: 25px;
}

/*关闭按钮*/
.closeBtn
{
   float:right;
   cursor: pointer;
   margin-right: 5px;
   color:#000;
   font-weight: bold;
}

/*内容层*/
.content
{
  padding:5px;
  text-indent: 2em;
}

样子如下:

时间: 2024-11-06 21:23:19

FirstBlood-jquery弹窗插件的相关文章

自己动手丰衣足食,h5手机端jquery弹窗插件(事件冒泡、单例模式、遮盖部分禁止默认滚动)

感谢浏览,欢迎交流=.= 公司开发微信网页多处需要使用弹窗,使用jquery-ui的定制化下载仍需要150多kb,想来有些奢侈(最终下来只有11kb,压缩后2kb,啊,我的神), 手机端弹窗方式与pc端有些不同,而且手机上有一个弹窗出来滚动跟父页面滚动相互影响的问题, 于是决定写一个插件,专门对付手机网页的弹窗. 弹窗的mask和dialog两部分都做成了position=fixed,比较喜欢这种效果,并且屏蔽了被遮住部分的滚动. 几处认为需要留意的知识点或困难点: 1.事件冒泡: e.prev

jquery弹窗插件

.zhuti { position:absolute; z-index:3; font-size:14px; border-radius:5px; box-shadow:0 0 5px white; overflow:hidden; color:#333; } .title { background-color:#3498db; vertical-align:middle; height:35px; width:100%; line-height:35px; text-indent:1em; }

java菜鸟篇&lt;三&gt; Jquery弹窗插件Lhgdialog的用法( 原文搬抄+添加,方便以后查找,书签太多了)

今天带我的大神让我做个消息提示,我准备用dialog作,于是乎百度+自己动动脑子 百度原文: Lhgdialog的用法 大家都知道用js可以实现,但是在使用js实现的弹窗时得考虑很东西:浏览器的兼容.页面的交互等等问题. 在这里简单介绍一下lhgdialog的用法. 参数有: Title:弹窗的上标题: Content:弹窗中的内容(当然可以以一个页面为内容,用URL连接): Ok:弹窗的确定键(可以是function)是布尔类型的: Cancel:取消键(同上): Cancelval:取消键的

一个简单的页面弹窗插件 jquery.pageMsgFrame.js

页面弹窗是网站中常用的交互效果,它可以强提示网站的某些信息给用户,或者作用于某些信息的修改等等功能. 这几天在做一个项目的时候,就顺捎把这个插件写一下,栽棵树,自己乘凉吧. 原创博文,转载请注明出处:http://www.cnblogs.com/dereksunok/p/3724764.html html代码: 1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5

实用的 jquery 小插件

1 /** 2 * ---------------------------------------------------- 3 * 实用的 jquery 插件方法 4 * @QQ 617937424 5 * @寄语 不要重复写同样的代码,学会封装成方法,慢慢积累,提高效率. 6 * ---------------------------------------------------- 7 */ 8 9 10 /** 11 * 全选/反选 12 * 13 * html结构: 14 <div i

jquery自定义插件——window的实现

本例子实现弹窗的效果: 1.jquery.show.js /* * 开发者:lzugis * 开发时间:2014年6月10日 * 实现功能:点击在鼠标位置显示div * 版本序号:1.0 */ (function($){ $.fn.showDIV = function(options){ var defaults = {}; var options = $.extend(defaults, options); var showdiv=$(this); var close, title, cont

FancyBox - 经典的 jQuery Lightbox 插件

FancyBox 是一款非常优秀的弹窗插件,能够为图片.HTML 内容和其它任务的多媒体内容提供优雅的弹出缩放效果.作为是最流行的 Lightbox 插件之一,可以通过 fitToView 实现自适应功能.主要特色: ?  能够显示图片.HTML 元素.SWF 影片.iframe 框架和 Ajax 请求的内容 ?  可以通过配置和 CSS 自定义外观和功能 ?  一组内容可以实现导航 ?  支持滚动事件驱动浏览 ?  在放大项目下方有漂亮的投影 效果演示     插件下载 您可能感兴趣的相关文章

Jquery Media插件使用,解决在线预览及打开PDF文件

用到过PDF的媛媛and猿猿们,总会发现这大千世界之万能播放器插件,总能少了对媒体控制的接口. 你总会发现PDF无法像img图片一样正常加载展现出来,那么我们在通用语法的基础上拓展出了适用于预览及打开的PDF插件便于开发应用. 最主要的是使用到了一个jquery的插件jquery.media.js,使用这个插件就很容易实现了. 该插件可以播放多种类型的多媒体文件包括:Flash, Quicktime, Windows Media Player, Real Player, MP3, Silverl

jQuery.fly插件实现添加购物车抛物线效果

样例 使用电商 APP 购买商品时,很多都有上图的红色小球抛物线效果,下面通过 jQuery.fly 插件来实现一个简单 Demo. 实现 简单思路: 确定抛物线的起始和终止位置: 通过 js 在起始位置创建一个 document 对象,作为红色小球: 通过 jQuery.fly 插件提供的fly函数来移动小球,移动至终止位置: 当小球到达终止位置后,通过fly插件提供的 onEnd 回调函数,将小球销毁: Demo 源码: <!DOCTYPE html> <html lang=&quo