js实现右下角提示框的方法


Posted in Javascript onFebruary 03, 2015

本文实例讲述了js实现右下角提示框的方法。分享给大家供大家参考。具体实现方法如下:

实现右下角提示框的Jquery插件 (popup.js)

//兼容ie6的fixed代码   

//jQuery(function($j){  

//    $j('#pop').positionFixed()  

//})  

(function($j){  

    $j.positionFixed = function(el){  

        $j(el).each(function(){  

            new fixed(this)  

        })  

        return el;                    

    }  

    $j.fn.positionFixed = function(){  

        return $j.positionFixed(this)  

    }  

    var fixed = $j.positionFixed.impl = function(el){  

        var o=this;  

        o.sts={  

            target : $j(el).css('position','fixed'),  

            container : $j(window)  

        }  

        o.sts.currentCss = {  

            top : o.sts.target.css('top'),                

            right : o.sts.target.css('right'),                

            bottom : o.sts.target.css('bottom'),                  

            left : o.sts.target.css('left')               

        }  

        if(!o.ie6)return;  

        o.bindEvent();  

    }  

    $j.extend(fixed.prototype,{  

        ie6 : $.browser.msie && $.browser.version < 7.0,  

        bindEvent : function(){  

            var o=this;  

            o.sts.target.css('position','absolute')  

            o.overRelative().initBasePos();  

            o.sts.target.css(o.sts.basePos)  

            o.sts.container.scroll(o.scrollEvent()).resize(o.resizeEvent());  

            o.setPos();  

        },  

        overRelative : function(){  

            var o=this;  

            var relative = o.sts.target.parents().filter(function(){  

                if($j(this).css('position')=='relative')return this;  

            })  

            if(relative.size()>0)relative.after(o.sts.target)  

            return o;  

        },  

        initBasePos : function(){  

            var o=this;  

            o.sts.basePos = {  

                top: o.sts.target.offset().top - (o.sts.currentCss.top=='auto'?o.sts.container.scrollTop():0),  

                left: o.sts.target.offset().left - (o.sts.currentCss.left=='auto'?o.sts.container.scrollLeft():0)  

            }  

            return o;  

        },  

        setPos : function(){  

            var o=this;  

            o.sts.target.css({  

                top: o.sts.container.scrollTop() + o.sts.basePos.top,  

                left: o.sts.container.scrollLeft() + o.sts.basePos.left  

            })  

        },  

        scrollEvent : function(){  

            var o=this;  

            return function(){  

                o.setPos();  

            }  

        },  

        resizeEvent : function(){  

            var o=this;  

            return function(){  

                setTimeout(function(){  

                    o.sts.target.css(o.sts.currentCss)        

                    o.initBasePos();  

                    o.setPos()  

                },1)      

            }             

        }  

    })  

})(jQuery)  

  

jQuery(function($j){  

    $j('#footer').positionFixed()  

})  

  

//pop右下角弹窗函数  

function Pop(title,url,intro){  

    this.title=title;  

    this.url=url;  

    this.intro=intro;  

    this.apearTime=1000;  

    this.hideTime=500;  

    this.delay=10000;  

    //添加信息  

    this.addInfo();  

    //显示  

    this.showDiv();  

    //关闭  

  this.closeDiv();  

}  

Pop.prototype={  

  addInfo:function(){  

    $("#popTitle a").attr('href',this.url).html(this.title);  

    $("#popIntro").html(this.intro);  

    $("#popMore a").attr('href',this.url);  

  },  

  showDiv:function(time){  

        if (!($.browser.msie && ($.browser.version == "6.0") && !$.support.style)) {  

      $('#pop').slideDown(this.apearTime).delay(this.delay).fadeOut(400);;  

    } else{//调用jquery.fixed.js,解决ie6不能用fixed  

      $('#pop').show();  

            jQuery(function($j){  

                $j('#pop').positionFixed()  

            })  

    }  

  },  

  closeDiv:function(){  

      $("#popClose").click(function(){  

            $('#pop').hide();  

          }  

    );  

  }  

}

右下角提示框实例

<!DOCTYPE HTML>  

<html>  

<head>  

    <meta charset="UTF-8">  

    <title>jquery右下角pop弹窗</title>  

</head>  

<body>  

<h2>请看浏览器有下角</h2>  

<!--jquery右下角pop弹窗start -->  

<script type="text/javascript" >  

      window.onload=function(){  

            var pop=new Pop("这里是标题,哈哈",  

            "URL超链接",  

            "请输入你的内容简介,这里是内容简介.请输入你的内容简介,这里是内容简介.请输入你的内容简介,这里是内容简介");  

        }  

</script>  

<script type="text/javascript" src="jquery.min.js"></script>  

<script type="text/javascript" src="popup.js"></script>  

<div id="pop" style="display:none;">  

    <style type="text/css">  

    *{}{margin:0;padding:0;}  

    #pop{}{background:#fff;width:260px;border:1px solid #e0e0e0;font-size:12px;position: fixed;right:10px;bottom:10px;}  

    #popHead{}{line-height:32px;background:#f6f0f3;border-bottom:1px solid #e0e0e0;position:relative;font-size:12px;padding:0 0 0 10px;}  

    #popHead h2{}{font-size:14px;color:#666;line-height:32px;height:32px;}  

    #popHead #popClose{}{position:absolute;right:10px;top:1px;}  

    #popHead a#popClose:hover{}{color:#f00;cursor:pointer;}  

    #popContent{}{padding:5px 10px;}  

    #popTitle a{}{line-height:24px;font-size:14px;font-family:'微软雅黑';color:#333;font-weight:bold;text-decoration:none;}  

    #popTitle a:hover{}{color:#f60;}  

    #popIntro{}{text-indent:24px;line-height:160%;margin:5px 0;color:#666;}  

    #popMore{}{text-align:right;border-top:1px dotted #ccc;line-height:24px;margin:8px 0 0 0;}  

    #popMore a{}{color:#f60;}  

    #popMore a:hover{}{color:#f00;}  

    </style>  

    <div id="popHead">  

    <a id="popClose" title="关闭">关闭</a>  

    <h2>温馨提示</h2>  

    </div>  

    <div id="popContent">  

    <dl>  

        <dt id="popTitle">这里是标题</dt>  

        <dd id="popIntro">这里是内容简介</dd>  

    </dl>  

    <p id="popMore">查看 »</p>  

    </div>  

</div>  

<!--右下角pop弹窗 end-->  

<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>jquery右下角弹窗   

</body>  

</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
js实现iframe动态调整高度的代码
Jan 06 Javascript
基于jquery打造的百分比动态色彩条插件
Sep 19 Javascript
jquery快捷动态绑定键盘事件的操作函数代码
Oct 17 Javascript
JavaScript动态操作表格实例(添加,删除行,列及单元格)
Nov 25 Javascript
jquery 图片缩放拖动的简单实例
Jan 08 Javascript
jQuery实现的图片分组切换焦点图插件
Jan 06 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
Sep 09 Javascript
javascript实现下拉提示选择框
Dec 29 Javascript
Vue组件间通信 Vuex的用法解析
Aug 05 Javascript
使用JavaScript计算前一天和后一天的思路详解
Dec 20 Javascript
构建一个JavaScript插件系统
Oct 20 Javascript
JavaScript 生成唯一ID的几种方式
Feb 19 Javascript
Node.js中child_process实现多进程
Feb 03 #Javascript
jquery实现增加删除行的方法
Feb 03 #Javascript
自定义函数实现IE7与IE8不兼容js中trim函数的问题
Feb 03 #Javascript
director.js实现前端路由使用实例
Feb 03 #Javascript
js与jquery回车提交的方法
Feb 03 #Javascript
JS实现至少包含字母、大小写数字、字符的密码等级的两种方法
Feb 03 #Javascript
Javascript中call和apply函数的比较和使用实例
Feb 03 #Javascript
You might like
laravel-admin 中列表筛选方法
2019/10/03 PHP
通过javascript的匿名函数来分析几段简单有趣的代码
2010/06/29 Javascript
jquery右下角弹出提示框示例代码
2013/10/08 Javascript
JavaScript中string转换成number介绍
2014/12/31 Javascript
javascript 数组操作详解
2015/01/29 Javascript
基于javascript、ajax、memcache和PHP实现的简易在线聊天室
2015/02/03 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
2015/11/03 Javascript
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
2016/05/16 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
2017/01/03 Javascript
Javascript封装id、class与元素选择器方法示例
2017/03/13 Javascript
HTML5+jQuery实现搜索智能匹配功能
2017/03/24 jQuery
原生js调用json方法总结
2018/02/22 Javascript
在vue2.0中引用element-ui组件库的方法
2018/06/21 Javascript
vue中node_modules中第三方模块的修改使用详解
2019/05/31 Javascript
JS实现移动端在线签协议功能
2019/08/22 Javascript
extjs图表绘制之条形图实现方法分析
2020/03/06 Javascript
ES6函数实现排它两种写法解析
2020/05/13 Javascript
vue实现放大镜效果
2020/09/17 Javascript
Python实现递归遍历文件夹并删除文件
2016/04/18 Python
教你学会使用Python正则表达式
2017/09/07 Python
python中如何使用正则表达式的集合字符示例
2017/10/09 Python
python中报错&quot;json.decoder.JSONDecodeError: Expecting value:&quot;的解决
2019/04/29 Python
django商品分类及商品数据建模实例详解
2020/01/03 Python
Brora官网:英国领先的羊绒服装品牌
2019/08/28 全球购物
美国手机支架公司:PopSockets
2019/11/27 全球购物
某IT外企面试题-二分法求方程!看看大家的C++功底
2015/07/04 面试题
学生学习总结的自我评价
2013/10/22 职场文书
房地产开发计划书
2014/01/10 职场文书
学习教师法的心得体会
2014/09/03 职场文书
税务职业生涯规划书范文
2014/09/16 职场文书
大学生职业生涯十年规划书范文
2014/09/17 职场文书
职工年度考核评语
2014/12/31 职场文书
乡镇一岗双责责任书
2015/01/29 职场文书
2016年教师学习教师法心得体会
2016/01/20 职场文书
Go语言测试库testify使用学习
2022/07/23 Golang