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


Posted in Javascript onMay 07, 2015

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

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

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

Javascript 相关文章推荐
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
Jan 11 Javascript
jQuery产品间断向下滚动效果核心代码
May 08 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
Mar 03 Javascript
JavaScript中this的9种应用场景及三种复合应用场景
Sep 12 Javascript
JavaScript代码性能优化总结篇
May 15 Javascript
几种二级联动案例(jQuery\Array\Ajax php)
Aug 13 Javascript
jquery判断页面网址是否有效的两种方法
Dec 11 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
May 26 Javascript
JS Input里添加小图标的两种方法
Nov 11 Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
Mar 09 Javascript
动态加载、移除js/css文件的示例代码
Mar 20 Javascript
Vue页面刷新记住页面状态的实现
Dec 27 Javascript
javascript实现的图片切割多块效果实例
May 07 #Javascript
javascript中indexOf技术详解
May 07 #Javascript
javascript限制文本框输入值类型的方法
May 07 #Javascript
浅谈Javascript的静态属性和原型属性
May 07 #Javascript
ECMAScript5(ES5)中bind方法使用小结
May 07 #Javascript
JS中获取函数调用链所有参数的方法
May 07 #Javascript
jQuery中animate动画第二次点击事件没反应
May 07 #Javascript
You might like
php检测iis环境是否支持htaccess的方法
2014/02/18 PHP
使用php批量删除数据库下所有前缀为prefix_的表
2014/06/09 PHP
PHP基于curl后台远程登录正方教务系统的方法
2016/10/14 PHP
PHP实现移除数组中为空或为某值元素的方法
2017/01/07 PHP
PHP+jQuery实现滚屏无刷新动态加载数据功能详解
2017/05/04 PHP
PHP正则表达式笔记与实例详解
2019/05/09 PHP
JavaScript高级程序设计 读书笔记之十一 内置对象Global
2012/03/07 Javascript
使用jquery自定义鼠标样式满足个性需求
2013/11/05 Javascript
jquery分页对象使用示例
2014/04/01 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
jquery分割字符串的方法
2015/06/24 Javascript
node.js(express)中使用Jcrop进行图片剪切上传功能
2017/04/21 Javascript
vue.js实现条件渲染的实例代码
2017/06/22 Javascript
jquery中done和then的区别(详解)
2017/12/19 jQuery
vue 自定义指令自动获取文本框焦点的方法
2018/08/25 Javascript
element-ui组件table实现自定义筛选功能的示例代码
2019/03/15 Javascript
微信小程序如何加载数据库真实数据的实现
2020/03/04 Javascript
Python基础之getpass模块详细介绍
2017/08/10 Python
python腾讯语音合成实现过程解析
2019/08/01 Python
python opencv调用笔记本摄像头
2019/08/28 Python
Python turtle库绘制菱形的3种方式小结
2019/11/23 Python
python3实现往mysql中插入datetime类型的数据
2020/03/02 Python
pycharm安装及如何导入numpy
2020/04/03 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
Pycharm中安装wordcloud等库失败问题及终端通过pip安装的Python库如何添加到Pycharm解释器中(推荐)
2020/05/10 Python
4款Python 类型检查工具,你选择哪个呢?
2020/10/30 Python
python 实现性别识别
2020/11/21 Python
Django2.1.7 查询数据返回json格式的实现
2020/12/29 Python
Daniel Wellington官方海外旗舰店:丹尼尔惠灵顿DW手表
2018/02/22 全球购物
外企C语言笔试题
2013/11/10 面试题
将相和教学反思
2014/02/04 职场文书
护士感人事迹
2014/05/01 职场文书
上班迟到检讨书
2014/09/15 职场文书
2015政治思想表现评语
2015/03/25 职场文书
Winsows11性能如何? win11性能测评多核竟比Win10差了10%
2021/11/21 数码科技
深入理解 Golang 的字符串
2022/05/04 Golang