首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法让.not()类选择器处理此问题

无法让.not()类选择器处理此问题
EN

Stack Overflow用户
提问于 2012-07-23 09:59:28
回答 1查看 17关注 0票数 0

正如你所看到的,我是jquery的新手,我正在尝试做一个简单的效果,你用菜单链接过滤一个图库,我想在悬停时改变不透明度,点击时我需要悬停停止工作。我尝试的是在点击时添加一个".disabled“类,它确实会添加到我的菜单链接中,并将悬停功能设置为.not(."disabled"),但很明显,在dom就绪后,悬停没有检查类,我该如何解决这个问题?任何其他关于如何优化这个函数的指针都会有所帮助。提前谢谢。Clazzid

下面是我的代码:

代码语言:javascript
复制
$('#menu-item-43 a ,#menu-item-44 a, #menu-item-42 a, #menu-item-64 a').click(function() {
                $('#menu-item-43 a ,#menu-item-44 a, #menu-item-42 a, #menu-item-64 a').addClass('disabled');
            });


            $('#menu-item-42 a').click(function() {
                $('.exhibition, .prototyping').stop().animate({ opacity: 0.0 }, 500);
            });
            $('#menu-item-42 a').click(function() {
                $('.design').stop().animate({ opacity: 1.0 }, 500);
            });

            $('#menu-item-43 a').click(function() {
                $('.design, .prototyping').stop().animate({ opacity: 0.0 }, 500);
            });
            $('#menu-item-43 a').click(function() {
                $('.exhibition').stop().animate({ opacity: 1.0 }, 500);
            });

            $('#menu-item-44 a').click(function() {
                $('.design, .exhibition').stop().animate({ opacity: 0.0 }, 500);
            });
            $('#menu-item-44 a').click(function() {
                $('.prototyping').stop().animate({ opacity: 1.0 }, 500);
            });

            $('#menu-item-64 a').click(function() {
                $('.design, .exhibition, .prototyping').stop().animate({ opacity: 1.0 }, 500);
            });  



            $('#menu-item-42 a').not('.disabled').hover(function() {
                $('.exhibition, .prototyping').stop().animate({ opacity: 0.0 }, 500);
            });
            $('#menu-item-42 a').not('.disabled').hover(function() {
                $('.design').stop().animate({ opacity: 1.0 }, 500);
            });

            $('#menu-item-43 a').not('.disabled').hover(function() {
                $('.design, .prototyping').stop().animate({ opacity: 0.0 }, 500);
            });
            $('#menu-item-43 a').not('.disabled').hover(function() {
                $('.exhibition').stop().animate({ opacity: 1.0 }, 500);
            });

            $('#menu-item-44 a').not('.disabled').hover(function() {
                $('.design, .exhibition').stop().animate({ opacity: 0.0 }, 500);
            });
            $('#menu-item-44 a').not('.disabled').hover(function() {
                $('.prototyping').stop().animate({ opacity: 1.0 }, 500);
            });

            $('#menu-item-64 a').not('.disabled').hover(function() {
                $('.design, .exhibition, .prototyping').stop().animate({ opacity: 1.0 }, 500);
            });  
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-23 10:03:37

我觉得你应该这样做

代码语言:javascript
复制
$('#menu-item-43 a').hover(function() {
   if (!$(this).hasClass('disabled'))
      $('.exhibition').stop().animate({ opacity: 1.0 }, 500);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11605593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档