Javascript 如何将悬停事件侦听器添加到触发事件侦听器
我试图在下面的代码中添加一个悬停事件侦听器,这样当我将鼠标悬停在link标记上时,它就会触发展开子菜单的操作。我试过悬停和鼠标悬停,但都没用。单击似乎工作良好,但我不知道我做错了什么Javascript 如何将悬停事件侦听器添加到触发事件侦听器,javascript,jquery,Javascript,Jquery,我试图在下面的代码中添加一个悬停事件侦听器,这样当我将鼠标悬停在link标记上时,它就会触发展开子菜单的操作。我试过悬停和鼠标悬停,但都没用。单击似乎工作良好,但我不知道我做错了什么 Array.prototype.slice.call( this.menuItems ).forEach( function( el, i ) { var trigger = el.querySelector( 'a' ); if( self.touch ) { ``trigger``.ad
Array.prototype.slice.call( this.menuItems ).forEach( function( el, i ) {
var trigger = el.querySelector( 'a' );
if( self.touch ) {
``trigger``.addEventListener( 'touchstart', function( ev ) {
self._openMenu( this, ev ); } );
}
else {
trigger.addEventListener( 'click', function( ev ) { self._openMenu( this, ev ); });
}
});
window.addEventListener('resize', function( ev ) {
self._resizeHandler();
});
不要这样惩罚自己。使用类似jQuery的库将EventHandler附加到元素。jQuery支持鼠标悬停和鼠标悬停。不要重新发明轮子,并在现有解决方案(如引导)的基础上实现基本功能(如扩展子菜单)
trigger.addEventListener('click', function(ev) {
self._openMenu(this, ev);
});
Write
trigger.addEventListener('mouseover', function(ev) {
self._openMenu(this, ev);
});
用鼠标覆盖事件替换点击事件