如何在悬停而不是点击事件时打开 BeRocket 过滤器,WordPress?

Posted

技术标签:

【中文标题】如何在悬停而不是点击事件时打开 BeRocket 过滤器,WordPress?【英文标题】:How to open BeRocket Filters on hover instead of click event, WordPress? 【发布时间】:2021-12-07 21:47:50 【问题描述】:

我下载了 BeRocket AJAX 过滤器插件,我需要一些 jquery 自定义。

目前使用插件创建的过滤器仅在点击事件时打开。 我们需要允许用户在悬停时打开过滤器而不是点击事件

我尝试使用从插件参考中获得的以下 jquery,但无法正常工作

jQuery(document).on('hover', '.bapf_ocolaps .bapf_colaps_togl, .bapf_ccolaps .bapf_colaps_togl', function(e) 
    e.preventDefault;
    if( jQuery(this).closest('.bapf_ocolaps, .bapf_ccolaps').is('.bapf_ocolaps' ) ) 
        jQuery(this).closest('.bapf_ocolaps, .bapf_ccolaps').trigger('bapf_ocolaps');
     else 
        jQuery(this).closest('.bapf_ocolaps, .bapf_ccolaps').trigger('bapf_ccolaps');
    
);

我尝试了插件提供的jquery过滤器,但所有过滤器只有在点击事件后才能执行

任何帮助表示赞赏

网址:https://staging10.cheapassbikes.nl/shop/

谢谢

【问题讨论】:

使用 .on('mouseenter') 和 .on('mouseleave') 事件而不是 .on('hover') JFI:使用“mouseover”而不是“hover”也可以解决问题 【参考方案1】:

您可以使用 JQuery mouseovermouseout 事件。检查下面的代码。

jQuery(document).on('mouseover', '.bapf_sfilter', function(e) 
    jQuery(this).find('.bapf_body').show();
);

jQuery(document).on('mouseout', '.bapf_sfilter', function(e) 
    jQuery(this).find('.bapf_body').hide();
);

【讨论】:

以上是关于如何在悬停而不是点击事件时打开 BeRocket 过滤器,WordPress?的主要内容,如果未能解决你的问题,请参考以下文章

如何在点击时禁用鼠标悬停事件?

CSS:悬停在 SVG 组区域而不是渲染像素上,指针事件:边界框不能跨浏览器工作。如何解决

在悬停时制作 Twitter Bootstrap 菜单下拉菜单,而不是轻松点击(解决方案)

浏览器如何知道哪个元素应该获得点击或悬停事件?

如何在鼠标悬停时打开 react-bootstrap Dropdown?

Ionic3 OneSignal 如何检查应用程序是不是由于通知打开事件而启动