js网页右下角提示框实例


Posted in Javascript onOctober 14, 2014

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

html代码部分如下:

<style type="text/css">

.messageTip{border-right: #455690 1px solid; border-top: #a6b4cf 1px solid; border-left: #a6b4cf 1px solid; border-bottom: #455690 1px solid; z-index:99999; left: 0px; top: 0px; visibility:hidden; width: 230px; position: absolute; background:#cfdef4; text-align:left}

.messageTip .close{position:absolute; right:0px; font-weight:bold; padding:4px 4px 0 0;}

.messageTip .close a{color:red;font-size:12px; text-decoration:none;}

.messageTip .content{border-top: #ffffff 1px solid; border-left: #ffffff 1px solid}

.messageTip .content .title{color: #1f336b; padding-top: 4px;padding-left: 4px; height:22px;}

.messageTip .content .msg{border-right: #b9c9ef 1px solid;border-left: #728eb8 1px solid; border-top: #728eb8 1px solid; padding:10px; margin:1px}

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

<div id="eMeng" class="messageTip">

    <div class="close"><a href="javascript:msgTip.close();" title="关闭">×</a></div>

    <div class="content">

        <div class="title">系统提示:</div>

        <div class="msg">

        内容

        </div>

    </div>

</div>

js代码部分如下:

function messageTip(pJso) {

    _.init(this, pJso, {

        name: 'msg'//提示框标签ID

    });

    this.eMsg = document.getElementById(this.name);

}
messageTip.prototype =

{

    //提示框始终在最右下角

    rePosition: function(_this) {

        var divHeight = parseInt(_this.eMsg.offsetHeight, 10);

        var divWidth = parseInt(_this.eMsg.offsetWidth, 10);

        var docWidth = document.body.clientWidth;

        var docHeight = document.body.clientHeight;

        _this.eMsg.style.top = docHeight - divHeight + parseInt(document.body.scrollTop, 10);

        _this.eMsg.style.left = docWidth - divWidth + parseInt(document.body.scrollLeft, 10);

    },
    //提示框慢慢往上升

    moveDiv: function(_this) {

        /*

        这里可以设置自动几秒后关闭

        ...

        */

        try {

            if (parseInt(_this.eMsg.style.top, 10) <= (_this.docHeight - _this.divHeight + parseInt(document.body.scrollTop, 10))) {

                window.clearInterval(_this.objTimer);

                _this.objTimer = window.setInterval(function() { _this.rePosition(_this); }, 1);

            }

            _this.divTop = parseInt(_this.eMsg.style.top, 10);

            _this.eMsg.style.top = _this.divTop - 1;

        }

        catch (e) {

        }

    },

    

    //关闭提示框

    close: function() {

        this.eMsg.style.visibility = 'hidden';

        if (this.objTimer) window.clearInterval(this.objTimer);

    },
    //显示提示框

    show: function() {

        var divTop = parseInt(this.eMsg.style.top, 10);

        this.divTop = divTop;

        var divLeft = parseInt(this.eMsg.style.left, 10);
        var divHeight = parseInt(this.eMsg.offsetHeight, 10);

        this.divHeight = divHeight;
        var divWidth = parseInt(this.eMsg.offsetWidth, 10);

        var docWidth = document.body.clientWidth;

        var docHeight = document.body.clientHeight;

        this.docHeight = docHeight;
        this.eMsg.style.top = parseInt(document.body.scrollTop, 10) + docHeight + 10;

        this.eMsg.style.left = parseInt(document.body.scrollLeft, 10) + docWidth - divWidth;

        this.eMsg.style.visibility = "visible";
        var _this = this;

        this.objTimer = window.setInterval(function() { _this.moveDiv(_this); }, 10);

    }

}
var msgTip = new messageTip({ name: 'eMeng' });

window.onload = function() { msgTip.show(); };

window.onresize = function() { msgTip.rePosition(msgTip); };

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

Javascript 相关文章推荐
Prototype源码浅析 String部分(四)之补充
Jan 16 Javascript
jquery indexOf使用方法
Aug 19 Javascript
javascript中的括号()用法小结
Apr 14 Javascript
搭建pomelo 开发环境
Jun 24 Javascript
一个不错的仿携程自定义数据下拉选择select
Sep 01 Javascript
vue上传图片组件编写代码
Jul 26 Javascript
react实现一个优雅的图片占位模块组件详解
Oct 30 Javascript
Vue cli 引入第三方JS和CSS的常用方法分享
Jan 20 Javascript
Vue组件化开发思考
Feb 02 Javascript
Vue中的v-for指令不起效果的解决方法
Sep 27 Javascript
微信小程序实现随机验证码功能
Dec 20 Javascript
vue.js iview打包上线后字体图标不显示解决办法
Jan 20 Javascript
兼容主流浏览器的jQuery+CSS 实现遮罩层的简单代码
Oct 14 #Javascript
从数据库读取数据后将其输出成html标签的三种方法
Oct 13 #Javascript
JavaScript使用循环和分割来替换和删除元素实例
Oct 13 #Javascript
javascript实现分栏显示小技巧附图
Oct 13 #Javascript
jquery引用方法时传递参数原理分析
Oct 13 #Javascript
form.submit()不能提交表单的错误原因及解决方法
Oct 13 #Javascript
js的touch事件的实际引用
Oct 13 #Javascript
You might like
把1316这个数表示成两个数的和,其中一个为13的倍数,另一个是11的倍数,求这两个数。
2011/06/24 PHP
基于initPHP的框架介绍
2013/04/18 PHP
thinkphp获取栏目和文章当前位置的方法
2014/10/29 PHP
PHP使用mysql_fetch_object从查询结果中获取对象集的方法
2015/03/18 PHP
PHP自定义图片缩放函数实现等比例不失真缩放的方法
2016/08/19 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
2017/03/15 PHP
js+css在交互上的应用
2010/07/18 Javascript
JavaScript高级程序设计 学习笔记 js高级技巧
2011/09/20 Javascript
Javascript 键盘事件的组合使用实现代码
2012/05/04 Javascript
基于jQuery的倒计时实现代码
2012/05/30 Javascript
javascript中for/in循环及使用技巧
2015/09/01 Javascript
jQuery实现仿QQ在线客服效果的滚动层代码
2015/10/15 Javascript
Vue分页组件实例代码
2017/04/17 Javascript
解决AjaxFileupload 上传时会出现连接重置的问题
2017/07/07 Javascript
JS实现电话号码的字母组合算法示例
2019/02/26 Javascript
详解React 元素渲染
2020/07/07 Javascript
[07:39]第一届亚洲邀请赛回顾视频
2017/02/14 DOTA
pycharm 使用心得(二)设置字体大小
2014/06/05 Python
python使用7z解压apk包的方法
2015/04/18 Python
Python的Bottle框架中获取制定cookie的教程
2015/04/24 Python
Python简单进程锁代码实例
2015/04/27 Python
详解如何设置Python环境变量?
2019/05/13 Python
python 多进程并行编程 ProcessPoolExecutor的实现
2019/10/11 Python
pytorch查看通道数 维数 尺寸大小方式
2020/05/26 Python
python属于解释型语言么
2020/06/15 Python
THE OUTNET英国官网:国际设计师品牌折扣网站
2016/08/14 全球购物
京东全球售:直邮香港,澳门,台湾,美国,澳大利亚等地区
2017/09/24 全球购物
Ego Shoes官网:英国时髦鞋类品牌
2020/10/19 全球购物
main 主函数执行完毕后,是否可能会再执行一段代码,给出说明
2012/12/05 面试题
什么是会话Bean
2015/05/14 面试题
应届毕业生个人求职信范文
2014/01/29 职场文书
少先队入队活动方案
2014/02/08 职场文书
转让协议书范本
2014/04/15 职场文书
2014年第四季度入党积极分子思想汇报(十八届四中全会)
2014/11/03 职场文书
常务副总经理岗位职责
2015/02/02 职场文书
劳动保障事务所个人工作总结
2015/08/12 职场文书