首页澳门新葡亰官方网站 › js达成弹窗插件成效实例代码分享

js达成弹窗插件成效实例代码分享

jquery.sobox 经典版弹窗控件,jquery.sobox弹窗

sobox 是一款非常实用的,基于 jQuery 的弹窗控件。
功能非常完整,而代码量又非常少(压缩完仅8k不到)的一款弹窗控件,
如果你熟悉ext的弹窗控件,那么sobox的使用对你来说应该是愉悦而完全没有压力。

效果预览

目前测试下:支持IE6+ 火狐 谷歌游览器等。

引入sobox文件

  1. <link type="text/css" rel="stylesheet" media="all" href="style.css" />
  2. <script type="text/javascript" src="jquery1.9.1.min.js"></script>
  3. <script type="text/javascript" src="jquery.sobox.js"></script>

复制

先来看看此组件的基本配置项:如下:

使用方法

  1. $('.a-tip').click(function () {
  2.     $.sobox.tip({
  3.         content: '爱看不看,上面提示一下~'
  4.     });
  5.     return false;
  6. });

复制

复制代码 代码如下:

sobox 基本参数

  1. //通用方法
  2. $.sobox.pop({
  3.      /* 弹出类型及类型参数 */
  4.     type : 'content', // 弹窗内容模式:'content','target','ajax','iframe',每个模式分别对应每个参量
  5.     target : null, // target方式,target目标,如 '.detail','#contbox'
  6.     content : null, // content方式,支持html
  7.     iframe : null, // iframe方式,值为iframe目标页链接,如:http:// www.baidu.com/
  8.     ajax:{url:null,data:null,callback:function(){}}, // ajax事件
  9.  
  10.      /* 位置信息 */
  11.     posType:'center', // 'center,win,doc,tc,bc' 位置类型,居中 / 距window顶部 / 距离doucment顶部定 / top水平居中 / bottom水平居中,默认居中
  12.     pos:[0,0], // [x,y] 距离document左上角坐标,set模式使用
  13.     offset:[0,0], // [x,y] 弹窗相对本来设定位置偏移量,center模式只改变y轴
  14.  
  15.      /* 自定义参数 */
  16.     cls : null, // 添加自定义类名
  17.     width:360,height:null, // 宽高属性,iframe模式下,height为iframe高度
  18.     defaultShow:true, // 直接显示pop
  19.     visibility:true, // 默认pop执行后显示(用于部分复杂处理场景)
  20.     title : '提示', // 默认标题
  21.     showTitle:true, // 标题栏隐藏:默认显示
  22.     showMask : true, // 显示遮罩
  23.     drag :true, // 是否可拖动
  24.     maskClick : true, // 点击背景关闭内容
  25.     btn : [], // {cls:,text'确定',link:,removePop: true,callback:}
  26.  
  27.      /* 返回事件 */
  28.     beforePop:function(){}, // 弹窗打开之前callback事件
  29.     onPop: function(){}, // 页面打开callback事件
  30.     closePop: function(){} // 点击标题关闭按钮返回事件
  31. });
  32.  
  33. btn参数说明:
  34.  
  35. 默认每个btn元素由一个.a-sopop-btn 的a元素内置一个.s-sopop-btn span元素组成,
  36.  
  37. {
  38.      cls:null, // 添加类名
  39.      text:'确定', // 默认按钮文字
  40.      link:'#', // 为a添加链接,添加链接后,按钮返回链接指向地址
  41.      removePop: true, // 默认点击按钮关闭弹出层
  42.      callback:function (removePop){} // 返回事件
  43. }

复制

 


下载

 

经典版弹窗控件,jquery.sobox弹窗
sobox 是一款非常实用的,基于 jQuery 的弹窗控件。
功能非常完整,而代码量又非常少(压缩完仅...

this.config = {

 targetCls   :   '.clickElem',   // 点击元素
 title:  '我是龙恩',      // 窗口标题
 content     :  'text:<p
style="width:100px;height:100px">我是龙</p>',
 //content            :  'img:',
// 窗口内容 {text:具体内容 | id:id名 | img:图片链接 |
 // iframe:src链接} {string} 
 width:  400,      // 内容的宽度
 height      :  300,      // 内容的高度
 theight     :  30,// 标题的高度 默认为30
 drag :  true,     // 是否可以拖动 默认为true
 time :  3000,     // 自动关闭窗口的时间 为空或者'undefined'则不关闭
 showBg      :  true,     // 设置是否显示遮罩层 默认为true 遮罩
 closable    :  '#window-close', // 关闭按钮
 bgColor     :  '#000',   // 默认颜色
 opacity     : 0.5,// 默认透明度
 position    : {
     x: 0,
     y: 0   //默认等于0 居中
 },
 zIndex      :     10000,
 isScroll    : true,      //默认情况下 窗口随着滚动而滚动
 isResize    : true,      // 默认情况下 随着窗口缩放而缩放
 callback    : null//弹窗显示后回调函数

    };

JS编写简单的弹窗插件(含有demo和源码)
2013-12-11 22:30 by 龙恩0707, 409 阅读, 1 评论, 收藏, 编辑
 最近项目做完了
事情不是很多,今天正好也在调休,所以趁着这个时间研究了一下简易的JS弹窗功能,当然网上这块插件非常多,本人也没有仔细看网上的插件源码
只是凭着日常使用过的弹窗插件有这么多功能
来实现自己的弹窗思路,当然我这个可能实现了基本功能,那么如果想做的更好
更完善需要以后继续优化!如果有不足之处!请大家多多谅解!

由于弹窗大家都知道是个什么样的
所以这次没有做演示效果图!目前测试下:支持IE6+ 火狐 谷歌游览器等。

先来看看此组件的基本配置项:如下:

按 Ctrl+C 复制代码

按 Ctrl+C 复制代码

  1. 支持配置标题 内容,标题的高度 内容的宽度和高度 窗口是否可以拖动
    弹窗后是否自动关闭 是否显示遮罩背景 颜色 及
    透明度的配置,及窗口的展示位置 默认x轴0
    y轴0是居中对齐,也可以自己配置x轴  y轴的位置
    但是要注意是相对于父元素那个X轴 y轴 如果不指定父元素的相对定位
    那么默认情况下会相对于document的。当然窗口内容的宽度和高度不建议超过游览器的一屏幕的宽度和高度
    尽量小于第一屏的宽度和高度
    因为我以前用别人的弹窗插件会存在点击关闭按钮后 由于游览器有滚动条
    点击后触发滚动条事件 导致关闭不了窗口 如果内容宽度和高度很大的话
    也没有关系 窗口自动会出现滚动条的。

  2. 窗口的内容配置项 支持四种 1.text(文本) 可以如下配置 text:<p
    style="width:100px;height:100px">我是龙恩</p>

    2. img(图片) 可以如下配置 img:

    3. id(id节点)  可以如下配置 'id:XX'

    4. iframe   可以如下配置 'iframe:)'

  1. 提供弹窗后回调函数: 如弹窗后可以做自己想做的事情。

所以弹窗组件也没有什么好说的 当然如果要用到自己的项目中
css样式可以自己重新写的,我JS并没有写死掉 只是完成JS基本弹窗业务功能。

HTML代码如下:

复制代码 代码如下:

<div class="clickElem" style="margin-top:10px;">我是龙恩
请点击我</div>
<div class="clickElem" style="margin-top:10px;">我是龙恩
请点击我</div>

CSS代码如下

复制代码 代码如下:

<style type="text/css">
    *{margin:0;padding:0;list-style-type:none;}
    a,img{border:0;}
    body{font:12px/180% Arial, Helvetica, sans-serif;}
    label{cursor:pointer;}

    #window-box{border:5px solid #E9F3FD;background:#FFF;}
    .windown-title{position:relative;height:30px;border:1px solid
#A6C9E1;overflow:hidden;background:url(images/tipbg.png) 0 0
repeat-x;}
    .window-title h2{padding-left:5px;font-size:14px;color:#666;}
   
#window-close{position:absolute;right:10px;top:8px;width:10px;height:16px;text-indent:-10em;overflow:hidden;background:url(images/tipbg.png)
100% -49px no-repeat;cursor:pointer;}
    #window-content-border{padding:5px 0 5px 5px;}

</style>

JS代码如下

复制代码 代码如下:

/**
 * 编写JS弹窗组件
 * @date 2013-12-10
 * @author tugenhua
 * @email 879083421@qq.com
 */

 function Overlay(options){

    this.config = {

 targetCls   :   '.clickElem',   // 点击元素
 title:  '我是龙恩',      // 窗口标题
 content     :  'text:<p
style="width:100px;height:100px">我是龙恩</p>',
 //content     : 
'img:',
     // 窗口内容 {text:具体内容 | id:id名 | img:图片链接 |
     // iframe:src链接} {string} 
 width:  400,      // 内容的宽度
 height      :  300,      // 内容的高度
 theight     :  30,// 标题的高度 默认为30
 drag :  true,     // 是否可以拖动 默认为true
 time :  3000,     // 自动关闭窗口的时间 为空或者'undefined'则不关闭
 showBg      :  true,     // 设置是否显示遮罩层 默认为true 遮罩
 closable    :  '#window-close', // 关闭按钮
 bgColor     :  '#000',   // 默认颜色
 opacity     : 0.5,// 默认透明度
 position    : {
     x: 0,
     y: 0   //默认等于0 居中
 },
 zIndex      :     10000,
 isScroll    : true,      //默认情况下 窗口随着滚动而滚动
 isResize    : true,      // 默认情况下 随着窗口缩放而缩放
 callback    : null//弹窗显示后回调函数

    };

    this.cache = {
 isrender     :    true,     // 弹窗html结构只渲染一次
 isshow:    false,    // 窗口是否已经显示出来
 moveable     :    false
    };

    this.init(options);
 }

 Overlay.prototype = {

    constructor: Overlay,

    init: function(options){
 this.config = $.extend(this.config,options || {});
 var self = this,
     _config = self.config,
     _cache = self.cache;
 $(_config.targetCls).each(function(index,item){

转载本站文章请注明出处:澳门新葡亰官方网站 http://www.radioritmo-bl.com/?p=171

上一篇:

下一篇:

相关文章