【问题标题】:Resetting Button States in JQuery在 JQuery 中重置按钮状态
【发布时间】:2012-12-19 10:49:42
【问题描述】:

我正在创建一个 Phonegap 和 JQuery 移动应用程序。我有一些按钮,在应用程序中导航时,如果您返回菜单屏幕,您会看到它们仍处于选中状态(处于活动状态)或处于悬停状态。

用户返回菜单屏幕后是否可以重置状态?

【问题讨论】:

    标签: jquery jquery-ui jquery-mobile


    【解决方案1】:

    是的,你可以,你需要删除它的 ui-btn-active 类。

    例子:

    $("#button").removeClass("ui-btn-active");
    

    在 pagebeforeshow 事件中执行:

    $('#page').live('pagebeforeshow',function(e,data){    
        $("#button").removeClass("ui-btn-active");
    });
    

    【讨论】:

    • 如果用户再次点击按钮,是否会应用活动状态?
    • 是的,它将再次应用。页面转换发生后,jQM 的按钮状态有点问题。
    • ui-btn-hover 也可以这样吗?删除 pagebeforeshow 上的课程?
    • 可以,如果应用就删除。
    • 如果要在站点范围内使用,我会将其放在单独的 JS 文件中。
    【解决方案2】:

    一项改进:可以从 jQM 动态设置并获取活动按钮类(受this answer 启发),这意味着如果您或其他人决定更改它,这将起作用。

    $(document).delegate("#page-id", "pagebeforeshow", function(){
        var activeClass = $.mobile.activeBtnClass;
        $(this).find("."+activeClass).removeClass(activeClass);
    });
    

    【讨论】:

      猜你喜欢
      • 2022-01-05
      • 2020-10-26
      • 2013-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-16
      • 2022-06-15
      相关资源
      最近更新 更多