Vertical tabs using JQuery mobile nav bar
我在 JQuery 移动导航栏中使用选项卡作为参考
中给出的选项卡
http://jquerymobile.com/test/docs/toolbars/docs-navbar.html
但是,我的要求是创建如下所示的垂直选项卡,但使用 JQuery 移动
http://jquery-ui.googlecode.com/svn/tags/1.8.2/demos/tabs/vertical.html
我的代码如下所示,我希望标签像上面一样垂直
http://jsfiddle.net/D424Z/1/
请在下面找到自定义垂直导航栏的代码。
HTML(index.html)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | <!DOCTYPE html> <html> <head> <link rel="stylesheet" href="jquery.mobile-1.0rc1.css" /> <link rel="stylesheet" href="main.css" /> <script type="text/javascript" src="js/Common/jquery-1.6.2.min.js"> <script type="text/javascript" src="js/Common/jquery.mobile-1.0rc1.js"> <script type="text/javascript" src="main.js"> </head> <body> Sale Order <!-- top level navigation bar --> <ul class="nav"> <li> Header </li> <li> Lines </li> </ul> <!-- /navbar --> <!-- top level header div which will also contain a navigation bar which will act as subtab menu for the header tab --> <!--here--> <ul> <li> h1 </li> <li> h2 </li> </ul>   <!-- DIVs associated with the header tab --> <p>Main fields</p> <p>Others fields</p> <!-- Lines tab's DIV which also contains a navigation bar which acts as subtab --> <ul > <li> LineMain </li> <li> l1 </li> <li> l2 </li> <li> l3 </li> </ul>   <!-- DIV elements for the Lines TAB's subtab --> <p><center>[wp_ad_camp_2]</center></p><p>l1</p> <p>l2</p> <p>l3</p> <!--here--> <h4>Footer</h4> </body> </html> |
CSS(main.css)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 | /*This class of div will contain the subtab be hidden by default*/ .content_div { display: none; } /*This is the default subtab of a tab*/ .def_content_div { display: block; } /*This is the leaf div which will contain the form and the fields*/ .sub_content_div { display: none; } /*This is the leave div associated with the default subtab*/ .def_sub_content_div { display: block; } /*Following commented out as does not work*/ /* .sub_content_div:first-child { display: block; } .content_div:first-child { display: block; } */ .ui-btn { border-top-left-radius: 10px; border-top-right-radius: 10px; border-bottom: 0px; } #lns { margin-left: 113px; margin-top: -91px; } ul.nav, .nav ul{ margin: 0; padding: 0; cursor: default; list-style-type: none; } ul.nav{ width: 200px; float: left; margin-right: 1px; } ul.nav a{ color: #FFF; } ul.nav a:hover{ color: #FF0; } ul.nav>li{ margin: 0; color: #FFF; background-color: #900; padding-top: 5px; padding-right: 6px; padding-bottom: 5px; padding-left: 6px; font-family: Arial, Helvetica, sans-serif; } ul.nav li>ul>li{ margin: 0; color: #900; background-color: #979700; padding-top: 5px; padding-right: 6px; padding-bottom: 5px; padding-left: 6px; } ul.nav li>ul>li a{ color: #FFF; } ul.nav li>ul>li a:hover{ color: #FF0; } ul.nav li:hover { background-color: #000000; color: #FF0; background-image: url(../images/hover.jpg); } ul.nav li:hover>ul{ display : block; color: #000; } ul.nav li>ul{ display: none; position: absolute; width: 200px; left: 200px; margin-top: -5px; margin-left: 11px; color: #FFFF00; background-color: #000000; } ul.nav ul>li>ul{ display: none; position: absolute; width: 200px; left: 191px; margin-top: -5px; color: #FFFFFF; background-color: #333333; margin-left: 9px; } ul.nav ul>li>ul>li{ margin: 0; color: #FFF; background-color: #000; padding-top: 5px; padding-right: 6px; padding-bottom: 5px; padding-left: 6px; } ul.nav ul>li>ul>li a{ color: #FFF; } ul.nav ul li ul li a:hover { color: #FF0; } ul{ border: 1px solid #000; } .nav a{ text-decoration: none; } |
Javascript(main.js)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | //Following event is added to the top level navigation bars/tabs $('div[id="nav1"] a').live( 'click', function() { $(this).addClass('ui-btn-active'); $('div.content_div').hide(); $('div.def_content_div').hide(); $('div#' + $(this).attr('data-href')).show(); //The following line will show the div associated with the default subtab of the current tab (which was clicked) //e.g"main" is the default subtab for the"headers" tab. $('div#' + $(this).attr('data-href')).children( '[class="def_sub_content_div"]').show(); }); //Following event is addred to the subtabs navigation bar which will show the div associated with it when clicked. $('div[id="nav2"] a').live('click', function() { $(this).addClass('ui-btn-active'); $('div.sub_content_div').hide(); $('div.def_sub_content_div').hide(); $('div#' + $(this).attr('data-href')).show(); }); |