单击ahref后,Opencart 3.0.3响应式移动折叠菜单保持打开状态

问题描述

我有一个响应式菜单。切换机制是通过CSS复选框和次要的JQuery脚本实现的,该脚本可以折叠菜单分支的其他分支。 Opencart的每个类别都有一个ID,我在Twig中将其传递给每个菜单。当客户选择类别商品时,当然会随着类别URL的更改而重新加载整个DOM。我抓取并切下了网址,并从网址/ category&path = 231_435获得了最后三位数字。因为我只需要435。我将eseese和“ toggler”一词打包到变量var选择器中。使用Firefox DOM控制台时,以下两个命令: $('#tm')。prop(“ checked”,true); $('#toggle435')。prop(“ checked”,true); 在控制台中按预期工作。我的语法和转义/传递变量只是在杀了我,有人可以帮助我。我只是想让类别菜单在客户点击的地方打开。 这是带有Jquery的树枝。我怀疑我在这里遇到语法问题: $('#'+选择器).prop(“选中”,true);

这是树枝:

{% if categories %}
<div class="container sticky_menu"> 
    <nav id="menu">
    <label for="tm" id="toggle-menu">{{ text_category }} <span class="drop-icon">▾</span></label>
    <input type="checkBox" id="tm">
        <ul class="main-menu clearfix" >
             {% for category in categories %}
                  {% if category.children %}
                    <li>
                        <a>{{ category.name }}
                        <span class="drop-icon">▾</span>
                        <label title="Toggle Drop-down" class="drop-icon" for="toggle{{ category.category_id }}">▾</label>
                        </a>
                         <input type="checkBox" id="toggle{{ category.category_id }}" class="switch">
                        {% for children in category.children|batch(category.children|length / category.column|round(1,'ceil')) %}
                        <ul class="sub-menu">
                            {% for child in children %}
                            <li>
                                <a href="{{ child.href }}"> {{ child.name }}
                                <span class="drop-icon">▾</span>
                                <label title="Toggle Drop-down" class="drop-icon" for="toggle{{ child.category_id }}">▾</label>
                                </a>
                                <input type="checkBox" id="toggle{{ child.category_id }}" class="switch2">
                                {% if child.children %}
                                <ul class="sub-menu sub-sub-menu">
                                     {% for children in child.children %}
                                    <li>
                                        <a href="{{ children.href }}">{{ children.name }}</a>
                                    </li>
                                    {% endfor %}
                                </ul>
                                {% endif %}
                            </li>
                            {% endfor %}
                        </ul>
                        {% endfor %}
                    </li>
                  {% endif %}
             {% endfor %}
        </ul>
    </nav>     
</div>
<script>
    $(document).ready(function(){
            var pageURL = $(location).attr("href");
            var lastSeg = (pageURL.slice(pageURL.length - 3));
            var toggler = "toggle";
            var selector = toggler + lastSeg;       
            $('#tm').prop("checked",true);  
            $('#' + selector).prop("checked",true);
            alert(selector); 
        });
</script>
<script>
var items = $('.switch');
items.on('click',function(){
  items.not($(this)).prop('checked',false);
});
</script>
<script>
var items2 = $('.switch2');
items2.on('click',function(){
  items2.not($(this)).prop('checked',false);
});
</script>   
{% endif %}

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)