jquery中trigger()无法触发hover事件的解决方法

 更新时间:2015年05月07日 09:35:29   投稿:hebedich  
jquery中trigger() 方法触发被选元素的指定事件类型了,但有使用过程中会碰到一些问题了,下面我们一起来看看jQuery中trigger()触发hover事件疑问,希望对各位有帮助。

今天做一个项目,遇到了一个问题,是以前没有遇到过的,就此记上一笔。

1、trigger方法解释

官方是这么解释的:

复制代码 代码如下:

Description: Execute all handlers and behaviors attached to the matched elements for the given event type.

用法:
.trigger( eventType [, extraParameters] )

其中eventType包含javascript内置的事件、jQuery增加的事件和自定义事件。例如:

$('#foo').bind('click', function()
{
 alert($(this).text());
});
$('#foo').trigger('click');
$('#foo').bind('custom', function(event, param1, param2)
{
 alert(param1 + "\n" + param2);
});
$('#foo').trigger('custom', ['Custom', 'Event']);

很强大,常常用于页面初始化的时候使用。

2、trigger遇到hover

var $search=$('#header .search');
$search.find('li').hover(function()
{
 alert(1);
},function()
{
 alert(2);
});
$search.find('li').eq(0).trigger('hover');

无法触发hover。但是:

var $search=$('#header .search');
$search.find('li').click(function()
{
 alert(1);
},function()
{
 alert(2);
});
$search.find('li').eq(0).trigger('click');

触发click正常!

解决办法:

var $search=$('#header .search');
$search.find('li').hover(function()
{
 alert(1);
},function()
{
 alert(2);
});
$search.find('li').eq(0).trigger('mouseenter');//hover修改为mouseenter/mouseleave/mouseover/mouseout

同样的情况存在于jQuery.live(),不过live不推荐在1.7以后版本使用,使用on()代替。

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • 基于jquery animate操作css样式属性小结

    基于jquery animate操作css样式属性小结

    昨天突然有网友问我animate()方法可以来操作所有css属性吗?是的,我告诉他可以的。不过,在此有需要注意点需要大家搞清楚。接下来通过本篇文章给大家介绍基于jquery animate操作css样式属性小结,对jquery animate css相关知识感兴趣的朋友一起学习吧
    2015-11-11
  • jQuery的ajax和遍历数组json实例代码

    jQuery的ajax和遍历数组json实例代码

    下面小编就为大家带来一篇jQuery的ajax和遍历数组json实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • jquery ajax请求实例深入解析

    jquery ajax请求实例深入解析

    jquery中封装了一些ajax请求的方法,很实用,本文将以此引入一个实例,对jquery中ajax请求的方法进行详细介绍,需要了解更多的朋友可以参考下
    2012-11-11
  • jQuery原理系列-常用Dom操作详解

    jQuery原理系列-常用Dom操作详解

    下面小编就为大家带来一篇jQuery原理系列-常用Dom操作详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • passwordStrength 基于jquery的密码强度检测代码使用介绍

    passwordStrength 基于jquery的密码强度检测代码使用介绍

    我们设定密码强度等级为10,制作一张图片表示每个等级状态,给密码框绑定keyup事件,通过keyup事件获取密码值,然后使用正则进行判断密码强度等级,然后变换相应的图片
    2011-10-10
  • 编写高效jQuery代码的4个原则和5个技巧

    编写高效jQuery代码的4个原则和5个技巧

    有了JQuery对JS的整合和封装,它让页面操作更加的随心所欲,所以只有遵循良好的规范才会让代码更高效,更健壮。以下是我对如何高效操作JQuery的一些拙见,望指正!
    2014-04-04
  • jquery控制display属性为none或block

    jquery控制display属性为none或block

    这篇文章主要介绍了jquery控制display属性为none或block,需要的朋友可以参考下
    2014-03-03
  • jquery查找父元素、子元素(个人经验总结)

    jquery查找父元素、子元素(个人经验总结)

    对使用js或者jquery查找父元素、子元素比较混淆的朋友可以参考下本文,因为是个人总结,用起来会比较方便
    2014-04-04
  • jQuery实现的自定义滚动条实例详解

    jQuery实现的自定义滚动条实例详解

    这篇文章主要介绍了jQuery实现的自定义滚动条,结合完整实例详细分析了jQuery自定义滚动条的实现步骤与相关操作技巧,并给出了jquery.jscroll.js插件的完整代码,需要的朋友可以参考下
    2016-09-09
  • jquery 插件实现瀑布流图片展示实例

    jquery 插件实现瀑布流图片展示实例

    本文给大家分享的是使用jQuery的masonry库和infinitescroll库实现的瀑布流美女图片展示的实例,效果非常不错,这里推荐给大家,有需要的小火把可以参考下。
    2015-04-04

最新评论