jQuery实现网页右下角悬浮层提示

最近有同事提到类似网页右下角的消息悬浮提示框的制作。我之前也做过一个类似的例子,很简单。是仿QQ消息。现在感觉之前的那个例子只是说了实现原理,整体上给你的感觉还是太丑,今天为大家带来一个新的例子。是Discuz右下角悬浮层提示的。运行效果如下:

代码如下:

<!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>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>jQuery实现网页右下角悬浮层提示</title>
        <style type="text/css">
            *{margin:0;padding:0;list-style-type:none;}
            a,img{border:0;}
            body{font:12px/180% Arial, Helvetica, sans-serif, "新宋体";}

            /* pop */
            #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>
    </head>
    <body style="height:1200px;">
        <script type="text/javascript" src="js/jquery.min.js"></script>
        <script type="text/javascript">
            (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)
            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();
                    }
                );
              }
            }
        </script>
        <script type="text/javascript" >
        //页面加载调用
        window.onload=function(){
            //使用参数:1.标题,2.链接地址,3.内容简介
            new Pop("这里是标题,哈哈",
                "http://www.xttblog.com",
                "欢迎大家关注我的博客!如有疑问,请加QQ群:135430763共同学习!");
        }
        </script>
        <div id="pop" style="display:none;">
            <div id="popHead"> <a id="popClose" title="关闭">关闭</a>
                <h2>温馨提示</h2>
            </div>
            <div id="popContent">
                <dl>
                    <dt id="popTitle"><a href="http://blog.csdn.net/xmtblog/" target="_blank">这里是标题</a></dt>
                    <dd id="popIntro">这里是内容简介</dd>
                </dl>
                <p id="popMore"><a href="http://blog.csdn.net/xmtblog/" target="_blank">查看 ?</a></p>
            </div>
        </div>
        <div style="text-align:center;clear:both">
        <p>欢迎大家关注我的个人博客,或者加qq群135430763共同学习!</p>
        <p><a href="http://blog.csdn.net/xmtblog/" target="_blank">伪专家</a></p>
        </div>
    </body>
</html>


欢迎大家关注我的博客!如有疑问,请加QQ群:135430763共同学习!

时间: 2024-10-03 14:06:05

jQuery实现网页右下角悬浮层提示的相关文章

基于jQuery的input输入框下拉提示层(自动邮箱后缀名)

基于jQuery的input输入框下拉提示层,方便用户输入邮箱时的提示信息,需要的朋友可以参考下 效果图 // JavaScript Document (function($){ $.fn.extend({ "changeTips":function(value){ value = $.extend({ divTip:"" },value) var $this = $(this); var indexLi = 0; //点击document隐藏下拉层 $(docum

一款基于jquery超炫的弹出层提示消息

今天给大家带来一款基于jquery超炫的弹出层提示消息.这款实例页面初始时,一个go按钮.当单击go按钮时,提示强出层以动画形式出现.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class='b'> </div> <div class='bb'> </div> <button id='go'> GO </button> <div class='message'> <div class

JQuery实现页面右下角浮动新闻之参考示例和实现代码

有些讨厌JQuery,但工作中总有项目会需要使用它.这次,有个网站首页右下角要做浮动层,在网上找了几个例子,试着实现,总是出错.最后,选择了一个简单的参考示例.为避免忘记,在这里做些记录. 参考示例链接:http://www.17sucai.com/preview/1/2013-05-05/右下角浮动提示弹出框/demo.html 代码: 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "

CSS3结合jQuery制作的冒泡工具图片提示效果

一款基于CSS3技术的冒泡提示效果,为了演示效果,生成了许多冒泡的提示,实际使用中,可能不需要这么多,结合jQuery和jquery UI共同实现的网页提示特效,挺不错.因CSS不支持IE8及以下低版本,所以请使用IE9.chrome或火狐测试. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transition

JS网站右下角悬浮视窗可关闭广告

站右下角悬浮视窗可关闭广告代码,可收缩.展开,关闭,内容区可自定义html,兼容IE8+.FireFox.Chrome.Safari等主流浏览器.广告图片尺寸300x250. 使用方法:在head区域引入样式表文件hvtcss4.css和JS文件hvtjs4.js注意: <link href="http://hovertree.com/texiao/js/4/hvtcss4.css" rel="stylesheet" type="text/css&q

网页右侧悬浮窗制作

? 网页右侧悬浮导航制作 现在很多网站页面上都会出现弹出窗口.右下角广告窗.左下角论坛区等等,今天学习了一个右侧悬浮导航的制作,即无论页面超出屏幕多长,往下浏览页面时,悬浮导航依然保持窗口位置不动,展示在用户面前,下面和大家分享一下.(借用网站上的图片资源) 1.首先得具有基本的logo和导航分类,然后规定一个盒子大小,将他们布局好. 2.基本布局完成就得给它设置触动效果,鼠标触碰分类,就会有相应的背景色变化,点击之后就进入内页浏览. 3.重点在于如何将导航盒子固定在一个右侧的位置上不随用户的操

微信中域名被封-页面添加遮罩层提示用户使用浏览器打开(或下载APP)

微信营销是网络经济时代企业或个人营销模式的一种.是伴随着微信的火热而兴起的一种网络营销方式.但是也正因为如此,微信官方的屏蔽封杀域名的规范的也越来越严格.商家与微信之间进行着微信防封防屏蔽和封杀较量,可以说微信在广告拦截,封杀方面几乎是苛刻的.任何有广告嫌疑或被举报基本都百分百进入封杀名单.从2019下半年的“拼多多”链接不再被开放绿色通道便能看出腾讯的果决. 但是即使在如此,在微信防封上面仍然还是有巨大突破的.今天我给大家分享几种微信防封的行之有效方案,以下方案基本涵盖了市面上所有的微信推广方

定义一个方法get_page(url),url参数是需要获取网页内容的网址,返回网页的内容。提示(可以了解python的urllib模块)

1 定义一个方法get_page(url),url参数是需要获取网页内容的网址,返回网页的内容.提示(可以了解python的urllib模块) 2 import urllib.request 3 4 def get_page(url): 5 response = urllib.request.urlopen(url) 6 html = response.read() 7 return html 8 9 print(get_page(url='https://www.baidu,com'))

关于KB905474正版验证补丁破解办法 KB905474是个微软操作系统正版/盗版监测间谍软件。更新安装后,右下角有个提示说“系统监测到你的操作系统是盗版”。 如果没有安装的: 在系统提示更新的时候注意看一下,如果包含有“更新KB905474”就去掉“更新KB905474”方框前的勾,点击关闭(注意如果没有去掉那个勾得话,会找不到“关闭”,而是“确定”),在不在提示我该消息前打勾。 如果已经安装

关于KB905474正版验证补丁破解办法 KB905474是个微软操作系统正版/盗版监测间谍软件.更新安装后,右下角有个提示说“系统监测到你的操作系统是盗版”. 如果没有安装的: 在系统提示更新的时候注意看一下,如果包含有“更新KB905474”就去掉“更新KB905474”方框前的勾,点击关闭(注意如果没有去掉那个勾得话,会找不到“关闭”,而是“确定”),在不在提示我该消息前打勾. 如果已经安装的: 1,  搜索“KB 905474”这个文件,删除. 2,  打开注册表,找到 HKEY_LOC