5

基于这个演示:http ://webdesignerwall.com/demo/mobile-nav/这是我的代码。

<script type="text/javascript">
    jQuery(document).ready(function($){

        /* prepend menu icon */
        $('#nav-wrap').prepend('<div id="menu-icon"><img id="logo" src="<?php echo site_url(); ?>/wp-content/themes/blue-and-grey/images/mobileimages/hme_btn.png" /></div>');

        /* toggle nav */
        $("#menu-icon").on("click", function(){
            $("#nav").slideToggle();
            $(this).toggleClass("active");
        });

    });
    </script>

我需要的是单击菜单项后“关闭”的菜单,因为它是一个单页网站,我不希望它在单击后保持打开状态。我怎么做?

太感谢了!

4

3 回答 3

4

添加一个额外的事件来实现它。您可以在单击某些菜单项时触发clickof :#menu-icon

 $("#nav").on("click", "li", function () {
       $("#menu-icon").click();
       //or $("#nav").slideToggle();
 });

演示:http: //jsfiddle.net/hungerpain/RtMNj/2/

于 2013-06-23T17:35:51.907 回答
0

以防万一有人偶然发现你正在使用的这个问题Primefaces MobilejQuery Mobile这里是我能够解决的方法,因为这里接受的解决方案不适合我。

基本上我只是放了一个“隐形”a标签,它会触发关闭弹出窗口。当用户单击另一个菜单项时,它将执行一个click()指向该“不可见”a标签的 javascript 命令。

<ul data-role="listview" data-theme="c" data-divider-theme="a">
                    <li data-role="list-divider">Menu</li> 
                    <li data-icon="user">
                        <p:commandLink id="show-member-menu" styleClass="bordercolorddd"
                            value="Members" data-rel="back"  onclick="$('#closer').click();"
                            action="#{editROrgUnit.initializeSubordinateList}" 
                            update=":main:subordlist" process=":main:subordlist"/>
                    </li>
                    <li class="separator"><p:separator/><a id="closer" href="#" class="closerclass ui-btn ui-corner-all ui-shadow ui-btn-inline ui-btn-b" data-rel="back"/></li> 
                    <li data-icon="power">
                        <p:commandLink value="Logout" action="#{loginBean.logout}"
                            styleClass="bordercolorddd"
                            ajax="true" partialSubmit="true"
                            process="@this" />
                    </li>
                </ul>
于 2015-05-06T11:15:45.133 回答
0

您可以使用$( "#nav" ).panel( "close" );

于 2017-03-29T12:59:39.033 回答