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插件
Mar 29 jQuery
jQueryUI Sortable 应用Demo(分享)
Sep 07 jQuery
jQuery 开发之EasyUI 添加数据的实例
Sep 26 jQuery
jQuery实现动态添加节点与遍历节点功能示例
Nov 09 jQuery
jquery+css3实现熊猫tv导航代码分享
Feb 12 jQuery
jQuery实现的简单拖拽功能示例【测试可用】
Aug 14 jQuery
jQuery无冲突模式详解
Jan 17 jQuery
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 jQuery
JQuery样式操作、click事件以及索引值-选项卡应用示例
May 14 jQuery
jQuery/JS监听input输入框值变化实例
Oct 17 jQuery
JQuery中DOM节点的操作与访问方法实例分析
Dec 23 jQuery
jQuery实现简单评论功能
Aug 19 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
虹吸壶煮咖啡26个注意事项
2021/03/03 冲泡冲煮
PHP中的日期加减方法示例
2014/08/21 PHP
ThinkPHP 表单自动验证运用示例
2014/10/13 PHP
PHP表单提交后引号前自动加反斜杠的原因及三种办法关闭php魔术引号
2015/09/30 PHP
PHP简单获取随机数的常用方法小结
2017/06/07 PHP
Yii框架引入coreseek分页功能示例
2019/02/08 PHP
javascript 获取模态窗口的滚动位置代码
2013/08/06 Javascript
JS获取地址栏参数的小例子
2013/08/23 Javascript
jquery实现动态菜单的实例代码
2013/11/28 Javascript
js 定时器setTimeout无法调用局部变量的解决办法
2013/11/28 Javascript
JS冒泡事件的快速解决方法
2013/12/16 Javascript
选择复选框按钮置灰否则按钮可用
2014/05/22 Javascript
js+css实现tab菜单切换效果的方法
2015/01/20 Javascript
WordPress 单页面上一页下一页的实现方法【附代码】
2016/03/10 Javascript
微信小程序 动态绑定事件并实现事件修改样式
2017/04/13 Javascript
一个有意思的鼠标点击文字特效jquery代码
2017/09/23 jQuery
node通过npm写一个cli命令行工具
2017/10/12 Javascript
JavaScript实现简单的文本逐字打印效果示例
2018/04/12 Javascript
微信小程序支付前端源码
2018/08/29 Javascript
JS简单表单验证功能完整示例
2020/01/26 Javascript
vue2.0实现列表数据增加和删除
2020/06/17 Javascript
Python程序中使用SQLAlchemy时出现乱码的解决方案
2015/04/24 Python
python中lambda与def用法对比实例分析
2015/04/30 Python
对于Python装饰器使用的一些建议
2015/06/03 Python
解决python3在anaconda下安装caffe失败的问题
2017/06/15 Python
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
python使用tornado实现登录和登出
2018/07/28 Python
解决pycharm debug时界面下方不出现step等按钮及变量值的问题
2020/06/09 Python
Nixon手表英国官网:美国尼克松手表品牌
2020/02/10 全球购物
PHP中如何使用Cookie
2015/10/28 面试题
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
2014年秋季新学期寄语
2014/08/02 职场文书
2015年信息化建设工作总结
2015/07/23 职场文书
Python使用BeautifulSoup4修改网页内容
2022/05/20 Python
Debian11 Xfce终端光标的颜色怎么设置?
2022/08/14 数码科技