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

   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增加的事件和自定义事件。例如:

  ?

1
2
3
4
5
6
7
8
9
10

$('#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

  ?

1
2
3
4
5
6
7
8
9

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

  无法触发hover。但是:

  ?

1
2
3
4
5
6
7
8
9

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

  触发click正常!

  解决办法:

  ?

1
2
3
4
5
6
7
8
9

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()代替。

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

时间: 2024-08-04 07:41:56

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

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

今天做一个项目,遇到了一个问题,是以前没有遇到过的,就此记上一笔. 1.trigger方法解释 官方是这么解释的: 复制代码 代码如下: Description: Execute all handlers and behaviors attached to the matched elements for the given event type. 用法: .trigger( eventType [, extraParameters] ) 其中eventType包含javascript内置的事件

jquery中取消和绑定hover事件的实现代码_jquery

在网页设计中,我们经常使用jquery去响应鼠标的hover事件,和mouseover和mouseout事件有相同的效果,但是这其中其中如何使用bind去绑定hover方法呢?如何用unbind取消绑定的事件呢? 一.如何绑定hover事件 先看以下代码,假设我们给a标签绑定一个click和hover事件: $(document).ready(function(){ $('a').bind({ hover: function(e) { // Hover event handler alert("

Jquery中Ajax 缓存带来的影响的解决方法_jquery

使用jquery里load方法或者ajax调用页面的时候会存在cache的问题,清除cache的方法: 调用$.ajaxSetup ({cache:false}) 方法即可. 复制代码 代码如下: <script type="text/javascript"> $.ajaxSetup({ cache: false }); </script>

JQuery中使用ajax传输超大数据的解决方法_jquery

直接说问题,在一个页面用了Jquery(1.6)的Ajax请求,用的post,传递显示的数组有500多条.php端却只能接受到50条左右.刚开始以为是web服务器设置的问题,把,max_upload_size这类的都改了.但是没有效果,后来尝试用max_input_vars这个是新玩艺,刚开始还有点作用.后来,客户的数据超过2000的时候,还是一样,php端还是不能完全接受到ajax发送过来的数据.最后,在国外的一网站上,找到了解决方案. 在post发送前,将要发送的变量用JSON.string

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增加的事

jQuery中trigger()与bind()用法分析_jquery

本文实例讲述了jQuery中 trigger()与bind()用法.分享给大家供大家参考,具体如下: trigger(type) 在每一个匹配的元素上触发某类事件. 返回值:jQuery 参数: type (String): 要触发的事件类型 示例: 复制代码 代码如下: $("p").trigger("click") 1.trigger() 触发事件 这个方法是jQuery 1.3中新增的一个引起触发事件的函数. 这里的事件就如jQuery的帮助文档中的事件那一栏

jQuery中trigger()方法用法实例_jquery

本文实例讲述了jQuery中trigger()方法用法.分享给大家供大家参考.具体分析如下: 此方法触发匹配元素指定类型的事件. 语法结构一:规定匹配元素被触发的事件类型. 复制代码 代码如下: $(selector).trigger(event,param1,param2,...) 参数列表: 参数 描述 event 规定指定元素要触发的事件. 可以是自定义事件(使用 bind() 函数来附加),或者任何标准事件. param 可选.传递到事件处理程序的额外参数. 额外的参数对自定义事件特别有

JQuery中DOM加载与事件执行实例分析

 JavaScript和HTML之间的交互是通过用户和浏览器操作页面时引发的事件来处理的.当文档或者它的某些元素发生某些变化或操作时,浏览器会自动生成一个事件.例如当浏览器装载完一个文档后,会生成事件:当用户单击某个按钮时,也会生成事件.虽然利用传统的JavaScript事件能完成这些交互,但jQuery增加并扩展了基本的事件处理机制.jQuery不仅提供了更加优雅的事件处理语法,而且极大地增强了事件处理能力. 以浏览器装载文档为例,在页面加载完毕后,浏览器会通过JavaScript为DOM元素

JQuery中DOM加载与事件执行实例分析_jquery

本文实例讲述了JQuery中DOM加载与事件执行原理.分享给大家供大家参考.具体分析如下: JavaScript和HTML之间的交互是通过用户和浏览器操作页面时引发的事件来处理的.当文档或者它的某些元素发生某些变化或操作时,浏览器会自动生成一个事件.例如当浏览器装载完一个文档后,会生成事件:当用户单击某个按钮时,也会生成事件.虽然利用传统的JavaScript事件能完成这些交互,但jQuery增加并扩展了基本的事件处理机制.jQuery不仅提供了更加优雅的事件处理语法,而且极大地增强了事件处理能