javascript - 无法使用 jquery ui 持续时间参数或 CSS 让悬停事件在目标元素的兄弟元素上工作

标签 javascript jquery html css

我的目标是在悬停时更改元素及其在 DOM 中较高但在同一父元素中的兄弟元素之一的背景颜色。我能够使用 css transition 来更改第一个元素,但我无法让 sibling 进行更改。所以我调查了jquery UI addClass effect

我希望下面的代码能够工作,因为我无法让 css 解决方案工作,目标是在悬停时更改两个元素

$(document).ready(function(){
        $('.circletag').hover(function() {
             $(this).addClass( "red");
             $(this).parent().find('title').addClass('red', 2000);
        }, function() {
            $(this).removeClass('red', 5000);
            $(this).parent().find('title').removeClass('red', 2000);
        });
})

我能够在 $(this) 元素上获得淡入淡出效果,但 .title元素根本没有显示任何变化。

.circletag徘徊我想要.circletag要更改的背景和 .title背景在 2 秒间隔内同时变化。如果它不能用 css 完成,这是我更喜欢的解决方案,我会很感激 jquery 的解决方案。

我也很想知道为什么控制台说

SyntaxError: syntax error

    .ui-helper-hidden {

当我使用 jquery ui 时,为什么持续时间在此 addClass 函数中不起作用?对我来说太奇怪了。 为什么当鼠标离开元素时不需要 5 秒来删除类?看起来是 css 过渡规则在发号施令。

基本上我想要类为 .title 的 div的背景和.circletag悬停在 .circletag 上时淡入淡出的背景. <强> jsfiddle

谢谢大家的帮助。

最佳答案

像这样尝试:

$(document).ready(function(event){
    $('.circletag').hover(function() {
         $(this).addClass( "red");
         $(this).parent().find('.title').addClass('red', 2000);
    }, function() {
        $(this).removeClass('red', 5000);
        $(this).parent().find('.title').removeClass('red', 2000);
    });
 })

您需要在“查找”函数中指定类选择器。 让我知道:)

关于javascript - 无法使用 jquery ui 持续时间参数或 CSS 让悬停事件在目标元素的兄弟元素上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20187336/

相关文章:

javascript - React 中的 JSON 对象迭代

javascript - 修改现有的 JavaScript 类方法

javascript - 隐藏带有html字符串的div并将内容移动到span,然后将字符串编码为html

jquery - Renderblock JS 和 CSS 问题 - W3 Total 缓存插件

html - UIWebView 中带有 HTML 和 CSS 的 iPhone native 应用程序

html - 如何在不覆盖(实时)的情况下混合 css3 转换属性?

javascript - 立即加载网页而不是分段加载

JavaScript 模式替换

javascript - 带方括号的 JSON 数组键

javascript - 名为 "open"的函数加载一个新页面 - 尝试使用内联 JS 更改 iframe src