微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从另一个页面切换手风琴按钮

如何解决如何从另一个页面切换手风琴按钮

我的网站首页上有一个手风琴菜单。 单击主菜单时,手风琴使用jQuery进行切换。 但是当从另一个页面的主菜单链接到它时,它不起作用。

主要菜单

<ul id="menu-aaa" class="primary-menu">
<li id="menu-item-1">
<a href="toppage">home</a></li>
<li id="menu-item-2">
<a href="https://ccc/#aaa">aaa</a></li>
<li id="menu-item-3">
<a href="https://ccc/#bbb">bbb</a></li>
</ul>

手风琴菜单

<div id="aaa" class="testmenu">
<label for="testmenu_bar01"></label>
<input type="checkBox" id="testmenu_bar01" class="accordion">
<ul id="links01">
    <li class="testmenu01-li-01"><a href="">link1</a></li>
    <li class="testmenu01-li-02"><a href="">link2</a></li>
    <li class="testmenu01-li-03"><a href="">link3</a></li>
    <li class="testmenu01-li-04"><a href="">link4</a></li>
</ul>
</div>

<div id="bbb" class="testmenu">
<label for="testmenu_bar02"></label>
<input type="checkBox" id="testmenu_bar02" class="accordion">
<ul id="links02">
    <li class="testmenu02-li-01"><a href="">link1</a></li>
    <li class="testmenu02-li-02"><a href="">link1</a></li>
    <li class="testmenu02-li-03"><a href="">link1</a></li>
    <li class="testmenu02-li-04"><a href="">link1</a></li>
</ul>
</div>

jQuery

$(function($){

    $("ul.primary-menu > li.menu-item-2 > a").click(function() {
        $('input#testmenu_bar01').prop('checked',true);
    })
       
    $("ul.primary-menu > li.menu-item-3 > a").click(function() {
        $('input#testmenu_bar02').prop('checked',true);
        $('li.testmenu01-li-02').css('margin-top','2vh');
    })

});

我读了这个 How open my toggle-accordion from another page? 我试图添加

$(location.hash).find(.accordion).prop('checked',true);

到我的电线,但这是错误的。

然后,我在WordPress网站上尝试了此操作

jQuery(function($){ 

  var url = $(window.location.href); 
  var hash = url.substring(url.indexOf('#'));
  $(hash).find('input[type=checkBox]').prop('checked',true);
    
});

但这是错误的,它不起作用。

解决方法

我通过使用此jQuery代码解决了问题;

$(location.hash).find('input[type=checkbox]').prop('checked',true);

谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。