jquery MOBILE问题 - >使用.removeClass和.addClass不起作用

时间:2011-08-29 07:32:44

标签: jquery-mobile

无法找到任何有同样问题的人(搜索结果通常会使用jquery和css返回荒谬的编码错误,但事实并非如此。

问题: 我有

  • 课程'有效'和'无效'

    在非活动状态下 - 列表项将具有背景图像1 on active - hte list item将有背景图片2

    <ul>
        <li class="active"><a></a></li>
        <li class="inactive"><a></a></li>
    </ul>
    

    点击后,它应该正确切换它们......示例代码:

    $('ul li.inactive>a').live('click', function (e) { 
            e.preventDefault();
            theLI = $(this).closest("li");
                // active / deactivate buttons
                theLI.removeClass('inactive').addClass('active');   
        });
    

    使用JQUERY MOBILE这段代码不起作用,我已经尝试先添加类,然后删除...还尝试了激活的激活类。

    如果我将jquery mobile从包含中删除,它就能完美运行。 重新添加jquery移动库,不起作用。

    不是css问题。

    在使用firebug进行检查后,似乎删除了类似的工作,当它尝试添加它时会发现吗?

  • 1 个答案:

    答案 0 :(得分:0)

    这有效:

    <!DOCTYPE html> 
    <html> 
        <head> 
        <title>Page Title</title> 
        <meta name="viewport" content="width=device-width, initial-scale=1"> 
        <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0b2/jquery.mobile-1.0b2.min.css" />
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
        <script type="text/javascript" src="http://code.jquery.com/mobile/1.0b2/jquery.mobile-1.0b2.min.js"></script>
    
    <style type="text/css">
    .inactive {color:red;}
    .active {color:blue;}
    </style>
    
    <script>
        $('ul li.inactive>a').live('click', function (e) { 
            e.preventDefault();
            theLI = $(this).closest("li");
                // active / deactivate buttons
                theLI.removeClass('inactive').addClass('active');   
        });
        $('ul li.active>a').live('click', function (e) { 
            e.preventDefault();
            theLI = $(this).closest("li");
                // active / deactivate buttons
                theLI.removeClass('active').addClass('inactive');   
        });
    </script>
    </head> 
    <body> 
    
    <div data-role="page">
        <div data-role="header">
            <h1>index.html</h1>
        </div><!-- /header -->
    
        <div data-role="content">   
               <ul>
                   <li class="active"><a>One</a></li>
                   <li class="inactive"><a>Two</a></li>
              </ul>
        </div><!-- /content -->
    </div><!-- /page -->
    </body>
    </html>