【问题标题】:How can I add an active state to this jQuery code如何向此 jQuery 代码添加活动状态
【发布时间】:2011-12-02 19:46:34
【问题描述】:

任何意见,如何在此代码中添加一个活动状态(选择后仍然突出显示)?

jQuery:

$(function() {
    $("ul#navigation span").css("opacity","0");
    $("ul#navigation span").hover(function () {
        $(this).stop().animate({
            opacity: 1
        }, "slow");
    },
    function () {
        $(this).stop().animate({
            opacity: 0
        }, "slow");
    });
});

【问题讨论】:

    标签: jquery menu navigation


    【解决方案1】:

    不确定您在寻找什么,但这可以通过多种方式完成,具体取决于您的具体用途?

    这里有一个小提琴来展示它通常是如何处理类的:http://jsfiddle.net/zqTLu/5/

    【讨论】:

    • 非常感谢 adeneo!如果一个 sprite pic 用作菜单元素,而不是 css 红绿色怎么办?
    • 唯一的问题是我必须再次单击同一个项目才能删除活动状态...我的意思是,如果我单击另一个项目,那么前一个项目会变回无活动状态。我应该如何修改代码?
    • 只需从所有 span 元素中删除活动类,然后再将活动类再次附加到单击的 span 元素,请参阅THIS FIDDLE 了解说明。
    • 谢谢,它工作正常。还剩下一件事:如果我也喜欢 removeClass 动画怎么办?它不只是删除,而是动画出来(淡入淡出)。
    【解决方案2】:

    选择项目时为项目添加一个 css 类。

    .addClass() jQuery 方法将执行此操作。

    【讨论】:

    • 感谢您的回答。我是这个 jQuery 的新手。你能解释一下吗?
    • jQuery 中的 addClass() 和 removeClass() 方法,通过将 CSS 类添加到已定义的对象(例如,jQuery(this).addClass('selected')),让您在页面或对象上添加一种状态那个页面。你想在这里做什么?
    • 好吧,这就是我需要的活动状态:shopdev.co.uk/blog/animated-menus-using-jquery
    • 那么下面的代码应该适合你:$('ul#navigation span').click(function(){ $(this).toggleClass('active');}); 然后在你的样式表中写一个 CSS 规则来控制外观。将“点击”部分更改为您需要更改的任何功能。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-09
    • 1970-01-01
    • 1970-01-01
    • 2012-07-19
    相关资源
    最近更新 更多