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平滑滚动到顶部插件使用详解
May 08 jQuery
使用jquery的jsonp如何发起跨域请求及其原理详解
Aug 17 jQuery
jQuery插件DataTables分页开发心得体会
Aug 22 jQuery
使用JQuery实现图片轮播效果的实例(推荐)
Oct 24 jQuery
jQuery插件jsonview展示json数据
May 26 jQuery
jQuery动态移除与增加onclick属性的方法详解
Jun 07 jQuery
jQuery实现仿京东防抖动菜单效果示例
Jul 06 jQuery
jQuery pjax 应用简单示例
Sep 20 jQuery
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 jQuery
jquery 回调操作实例分析【回调成功与回调失败的情况】
Sep 27 jQuery
jQuery与原生JavaScript选择HTML元素集合用法对比分析
Nov 26 jQuery
jQuery实现的分页插件完整示例
May 26 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
《魔兽争霸3:重制版》翻车了?你想要的我们都没有
2019/11/07 魔兽争霸
Laravel重写用户登录简单示例
2016/10/08 PHP
thinkPHP框架可添加js事件的分页类customPage.class.php完整实例
2017/03/16 PHP
Yii框架实现多数据库配置和操作的方法
2017/05/25 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
php从数据库读取数据,并以json格式返回数据的方法
2018/08/21 PHP
Laravel 将数据表的数据导出,并生成seeds种子文件的方法
2019/10/09 PHP
javascript 定义新对象方法
2010/02/20 Javascript
Javascript读取cookie函数代码
2010/10/16 Javascript
前端开发过程中浏览器版本的两种判定方法
2013/10/30 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
2015/01/24 Javascript
浅谈javascript中的constructor
2016/06/08 Javascript
JavaScript中const、var和let区别浅析
2016/10/11 Javascript
JavaScript中如何使用cookie实现记住密码功能及cookie相关函数介绍
2016/11/10 Javascript
原生js实现验证码功能
2017/03/16 Javascript
websocket+node.js实现实时聊天系统问题咨询
2017/05/17 Javascript
JS实现图片预览的两种方式
2017/06/27 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
JQuery特殊效果和链式调用操作示例
2019/05/13 jQuery
Vue项目中数据的深度监听或对象属性的监听实例
2020/07/17 Javascript
python实现的udp协议Server和Client代码实例
2014/06/04 Python
python使用正则表达式检测密码强度源码分享
2014/06/11 Python
在Python中使用第三方模块的教程
2015/04/27 Python
Python的装饰器用法学习笔记
2016/06/24 Python
Python 爬虫学习笔记之多线程爬虫
2016/09/21 Python
VScode编写第一个Python程序HelloWorld步骤
2018/04/06 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
pycharm设置鼠标悬停查看方法设置
2019/07/29 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
使用python写的opencv实时监测和解析二维码和条形码
2019/08/14 Python
pandas 空数据处理方法详解
2019/11/02 Python
python用opencv 图像傅里叶变换
2021/01/04 Python
2014全国两会心得体会
2014/03/17 职场文书
党日活动总结
2014/05/07 职场文书
教师节领导致辞
2015/07/29 职场文书
Java实现给Word文件添加文字水印
2022/02/15 Java/Android