jquery插件制作 提示框插件实现代码

 更新时间:2012年08月17日 15:38:13   作者:  
今天我们介绍的是提示框插件tooltip的制作,其中还会介绍到自定义选择器插件的开发
我们首先来介绍自定义选择器的开发,他的代码结构如下:
复制代码 代码如下:

(function ($) {
$.expr[':'].customselector = function (object,index,properties,list) {
//code
};
})(jQuery);

调用时候的写法:
$(a:customselector)  现在我们先解释下函数中所使用到的各个参数。
  object:当前dom元素的引用,而不是jquery对象。需要强调的一点,dom元素和jquery对象完全不是一回事,a标签代表的是dom元素,$('a')代表的是jquery对象,他本身是个js对象。不清楚的朋友情google相关知识。
  index:下标为0的数组索引。
  properties:选择器元数据数组。
  list:dom元素数组。
  这些参数中,第一个参数是必须的,其他几个参数是可选的。
  选择器函数通过bool值确定是否包含当前元素,true包含,false不包含。
  这里我们实现一个a标签的选择器,只选择指向外部链接的a标签,代码如下:
复制代码 代码如下:

(function ($) {
$.expr[':'].external = function (object) {
if ($(object).is('a')) {
return object.hostname != location.hostname;
}
};
})(jQuery);

现在我们开始实现提示框插件的开发,开发过程就不多讲了,主要是代码实现,里面有备注说明。
复制代码 代码如下:

(function ($) {//更新坐标位置
$.fn.updatePosition = function (event) {
return this.each(function () {
$(this).css({
left: event.pageX + 20,
top: event.pageY + 5
});
});
}
//提示框插件,将显示a标签title属性的内容
$.fn.tooltip = function () {
return this.each(function () {
//获取当前对象
var self = $(this);
//获取title属性值
var title = self.attr('title');
//判断当前对象是否是a标签,title属性有无内容
if (self.is('a') && title != '') {
self.removeAttr('title')
.hover(function (event) {
//鼠标在目标对象上
$('<div id="tooltip"></div>').appendTo('body')
.text(title)
.hide()
.updatePosition(event)
.fadeIn(400);
}, function () {
//鼠标移出
$('#tooltip').remove();
}).mousemove(function (event) {
//鼠标移动
$('#tooltip').updatePosition(event);
});
}
});
};
})(jQuery);

希望本片文章对你有用,想看完整效果的朋友可以去下demo,下载地址:jQuery.plugin.tooltip

相关文章

  • jQuery Ajax中的事件详细介绍

    jQuery Ajax中的事件详细介绍

    这篇文章主要介绍了jQuery Ajax中的事件详细介绍,本文详细的讲解了AJAX的局部事件和全局事件、事件的顺序等内容,需要的朋友可以参考下
    2015-04-04
  • 基于jquery日历价格、库存等设置插件

    基于jquery日历价格、库存等设置插件

    这篇文章主要为大家详细介绍了基于jquery日历价格、库存等设置插件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • jQuery实现表头固定效果的实例代码

    jQuery实现表头固定效果的实例代码

    jQuery实现表头固定效果的实例代码,需要的朋友可以参考一下
    2013-05-05
  • jquery的ajax跨域请求原理和示例

    jquery的ajax跨域请求原理和示例

    这篇文章主要介绍了jquery的ajax跨域请求原理和示例,需要的朋友可以参考下
    2014-05-05
  • jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】

    jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】

    这篇文章主要介绍了jQuery实现DIV响应鼠标滑过由下向上展开效果,涉及jQuery基于事件响应结合stop与animate方法控制页面元素属性动态变换相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • jQuery实现用户注册的表单验证示例

    jQuery实现用户注册的表单验证示例

    用户注册的表单往往是需要进行验证的,否则会有一些不否合规则的数据入库,后果会不堪设想,下面为大家详细介绍下通过jquery是如何实现的,下面有个示例,感兴趣的朋友可以参考下
    2013-08-08
  • jQuery封装的获取Url中的Get参数示例

    jQuery封装的获取Url中的Get参数示例

    js的纯前台处理时会遇到将一个网页的参数,通过get方式,传递给下一个页面的问题,此时可以获取Url中的Get参数,具体如下,需要的朋友可以参考下
    2013-11-11
  • ajax jquery实现页面某一个div的刷新效果

    ajax jquery实现页面某一个div的刷新效果

    这篇文章主要给大家介绍了关于ajax jquery实现页面某一个div的刷新效果的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Jquery实现显示和隐藏的4种简单方式

    Jquery实现显示和隐藏的4种简单方式

    显示和隐藏的效果想必大家都有见到过吧,其实很简单,通过jquery便可轻松实现,下面为大家整理了4种方式,大家可以根据需求自由选择
    2013-08-08
  • 基于jquery的跟随屏幕滚动代码

    基于jquery的跟随屏幕滚动代码

    我们在很多网站看到,当我们滚动网页时,网页内的广告或某个小区域并不会消失,而是浮动在屏幕的某个地方,特别是一些局域广告
    2012-07-07

最新评论