【问题标题】:Substitute jquery .is(:hover) pseudo element替换 jquery .is(:hover) 伪元素
【发布时间】:2015-02-12 03:04:56
【问题描述】:

我在我的页面上使用以下代码-sn-p ...

if ( $("#footer, #header").is(':visible') && && !$("#footer, #header").is(':hover') ) { 

我已升级到最新的 jQuery 版本,现在不再支持此 .is(:hover)

我如何在上面的代码中替换它。我已经用谷歌搜索并找到了一些关于这个问题的线程,但似乎无法为我上面的代码找到合适的解决方案。

我使用此代码处理timeout 事件。如果我的鼠标在页眉或页脚上,我不希望清除超时。

【问题讨论】:

  • 你不能只选择#footer:hover吗?
  • 这是在哪个 jq 版本上运行的:$("#footer, #header").is(':visible') && && !$("#footer, #header").is(':hover') ???
  • 关于.is(':hover'),它适用于最新的jq版本,1.x和2.x分支但是当然,这不起作用&& &&,所以使用:$("#footer, #header").is(':visible') && !$("#footer, #header").is(':hover')
  • @A.Wolff f.cl.ly/items/1c1Y3G2F1c2h0d3z3C2j/… if ( $("#footer, #header").is(':visible') && !$("#footer, #header").is(':hover') && !fmVideo.paused ) { 这是我的代码。我使用 jQuery 1.11.1.min.js
  • @matt 有趣,看起来像使用 OR CSS 选择器会抛出错误 $("#footer, #header")is(':hover') 一起使用

标签: jquery timeout


【解决方案1】:

您可以在元素的悬停事件上添加一个类,然后检查该类是否存在。

悬停时切换类:

$("#footer, #header").hover(function() {
    $(this).toggleClass('hover');
});

检查类:

if (!$("#footer, #header").hasClass('hover')) { 
     //do  your stuff
});

【讨论】:

    猜你喜欢
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    • 2017-05-05
    • 2021-07-31
    • 2013-06-22
    • 1970-01-01
    • 2021-12-26
    • 1970-01-01
    相关资源
    最近更新 更多