Creating a sidebar in jQuery mobile

前端 未结 2 2076
春和景丽
春和景丽 2021-02-19 08:13

Normally, when you create a data-role=\"page\" element with jQuery mobile, it takes over the entire viewing area. For this reason, I don\'t understand how to create a sidebar. I

相关标签:
2条回答
  • 2021-02-19 09:07

    Looking over the beta Split View syntax you can control the "Sidebar" like this:

    <div data-role="page" id="jqm-home" class="type-home"> 
        <div data-role="content"> 
            <div class="content-secondary"> 
                This would be the sidebar/split view on a tablet, 
                would show up stacked on a mobile device
            </div><!-- end content-secondary -->    
    
            <div class="content-primary"> 
                This is the main content. 
    
                If Tablet device this would be to the right of the above content, 
                if mobile this would be below the above content.
    
            </div><!-- end content-primary -->
        </div><!-- end content -->
    </div><!-- end page -->
    

    Docs: http://jquerymobile.com/demos/1.0b1/ (right click to view source)

    Pertinent CSS: http://jquerymobile.com/demos/1.0b1/docs/_assets/css/jqm-docs.css

    A decent ALA article talking about media queries (what they used to do this): http://www.alistapart.com/articles/responsive-web-design/

    0 讨论(0)
  • 2021-02-19 09:13

    You need to add this code to a javascript file:

    function setPositions(){
        var winwidth = $( window ).width()
    
        if( winwidth >= 750 ){
            $('.content-secondary').css({'float':'left','width':'35%'});
            $('.content-primary').css({'margin-left':'36%'});
        }
        else{
            $('.content-secondary').css({'float':'none','width':'100%'});
            $('.content-primary').css({'margin-left':'0px'});
        }
    }
    
    
    $(function(){
        setDefaultTransition();
        $( window ).bind( "throttledresize", setPositions );
    });
    
    0 讨论(0)
提交回复
热议问题