JQuery扩展对象方法操作示例


Posted in jQuery onAugust 21, 2018

本文实例讲述了JQuery扩展对象方法操作。分享给大家供大家参考,具体如下:

应项目需求,对JQuery进行了一个扩展,需求如下:

项目中需要在浏览器右下角提示操作错误和系统提示内容,并有滑动移出和关闭的效果,所以自己写了一个效果还可以的弹出框来。就是给JQuery添加了一个方法ShowMsg。

先上代码:

$.fn.extend({
  ShowMsg: function (width, height, msgTitle_, msgContent_) {
      var TopY = 0; //初始化元素距父元素的距离
      $("#messageTitle").html(msgTitle_);
      $("#messageResDes").html(msgContent_);
      $(this).css("width", width + "px").css("height", height + "px"); //设置消息框的大小
      $(this).slideDown(1000); //弹出
      $("#messageTool").css("margin-top", -height); //为内容部分创建高度 溢出
      $("#message_close").click(function () {//当点击关闭按钮的时候
        if (TopY == 0) {
          $("#message").slideUp(1000); //这里之所以用slideUp是为了兼用Firefox浏览器
        }
        else {
          $("#message").animate({ top: TopY + height }, "slow", function () { $("#message").hide(); }); //当TopY不等于0时 ie下和Firefox效果一样
        }
        return false;
      });
      $(window).scroll(function () {
        $("#message").css("top", $(window).scrollTop() + $(window).height() - $("#message").height()); //当滚动条滚动的时候始终在屏幕的右下角
        TopY = $("#message").offset().top; //当滚动条滚动的时候随时设置元素距父原素距离
      });
      setTimeout(function () {
        if (TopY == 0) {
          $("#message").slideUp(1000); //这里之所以用slideUp是为了兼用Firefox浏览器
        }
        else {
          $("#message").animate({ top: TopY + height }, "slow", function () { $("#message").hide(); }); //当TopY不等于0时 ie下和Firefox效果一样
        }
        return false;
      }, 8000); //8s后自动滑动关闭
    }
})

代码一目了然,注释很清楚。下面呢,主要说下怎样对JQuery进行扩展吧。

上面的扩展我用了 $.fn.extend进行了扩展,是对JQuery的原生对象进行了方法的扩展,JQuery的扩展主要分为对JQuery本身类进行扩展(JQuery.extend)和对对象的进行方法扩展($.fn.extend)。下面分作说明:

1、用JQuery.extent对JQuery本身进行扩展:

JQuery.extend({
  showInfor:function(0{
      //do something
  }
});

怎么用上面这个呢,看下面:

$.showInfor();//这样就调用到了

2、用$.fn.extend进行方法扩展:

本文开始使用例子就是,下面直接看调用方法:

$("#messageBox").ShowMsg(230,100,"系统提示","提示信息");

说明:$.fn.extend是给JQuery的所有对象进行扩展方法,即只要JQuery可以定位到的对象,都可以使用这个方法。所以只要先定位到改对象,直接调用即可。

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

jQuery 相关文章推荐
利用jQuery解析获取JSON数据
Apr 08 jQuery
如何将 jQuery 从你的 Bootstrap 项目中移除(取而代之使用Vue.js)
Jul 17 jQuery
jQuery实现的页面遮罩层功能示例【测试可用】
Oct 14 jQuery
jQuery第一次运行页面默认触发点击事件的实例
Jan 10 jQuery
jquery在启动页面时,自动加载数据的实例
Jan 22 jQuery
jQuery niceScroll滚动条错位问题的解决方法
Feb 03 jQuery
jQuery实现获取动态添加的标签对象示例
Jun 28 jQuery
jquery判断滚动条距离顶部的距离方法
Sep 05 jQuery
JQuery特殊效果和链式调用操作示例
May 13 jQuery
JQuery常用简单动画操作方法回顾与总结
Dec 07 jQuery
多种类型jQuery网页验证码插件代码实例
Jan 09 jQuery
jquery插件实现搜索历史
Apr 24 jQuery
解决jquery有正确返回值但不执行success函数的问题
Aug 20 #jQuery
菊花转动的jquery加载动画效果
Aug 19 #jQuery
jQuery中常用动画效果函数知识点整理
Aug 19 #jQuery
jQuery UI实现动画效果代码分享
Aug 19 #jQuery
jquery实现的简单轮播图功能【适合新手】
Aug 17 #jQuery
jQuery实现的页面弹幕效果【测试可用】
Aug 17 #jQuery
jQuery实现轮播图及其原理详解
Apr 12 #jQuery
You might like
php使用pack处理二进制文件的方法
2014/07/03 PHP
Zend Framework动作助手Url用法详解
2016/03/05 PHP
PHP实现动态获取函数参数的方法示例
2018/04/02 PHP
PHP实现简易计算器功能
2020/08/28 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
2019/06/14 PHP
精解window.setTimeout()&window.setInterval()使用方式与参数传递问题!
2007/11/23 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
2013/11/19 Javascript
node.js WEB开发中图片验证码的实现方法
2014/06/03 Javascript
javascript的switch用法注意事项分析
2015/02/02 Javascript
关于安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法
2016/05/17 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
jQueryUI Datepicker组件设置日期高亮
2016/10/13 Javascript
vue 添加vux的代码讲解
2017/11/30 Javascript
VueJs组件之父子通讯的方式
2018/05/06 Javascript
利用不到200行代码写一款属于你自己的js类库
2019/07/08 Javascript
JS实现提示框跟随鼠标移动
2019/08/27 Javascript
VUE+node(express)实现前后端分离
2019/10/13 Javascript
解决vue+elementui项目打包后样式变化问题
2020/08/03 Javascript
基于postman获取动态数据过程详解
2020/09/08 Javascript
Python实现批量读取word中表格信息的方法
2015/07/30 Python
python+selenium实现登录账户后自动点击的示例
2017/12/22 Python
python使用xslt提取网页数据的方法
2018/02/23 Python
PyTorch上搭建简单神经网络实现回归和分类的示例
2018/04/28 Python
Python利用递归实现文件的复制方法
2018/10/27 Python
Python 画出来六维图
2019/07/26 Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
2019/08/23 Python
如何分离django中的媒体、静态文件和网页
2019/11/12 Python
Django-rest-framework中过滤器的定制实例
2020/04/01 Python
一些关于python 装饰器的个人理解
2020/08/31 Python
HTML5不支持标签和新增标签详解
2016/06/27 HTML / CSS
如何写出高质量、高性能的MySQL查询
2014/11/17 面试题
临床医学专业毕业生的自我评价
2013/10/17 职场文书
环境工程毕业生自荐信
2013/11/17 职场文书
学生自我评语大全
2014/04/18 职场文书
经贸日语专业个人求职信范文
2014/04/29 职场文书
工作目标责任书
2014/07/23 职场文书