单击 link 时关闭关闭-canvas 移动菜单 (JS)

Close off-canvas mobile menu when link is clicked (JS)

我有一个移动菜单,其中有一些锚定链接,单击时会滚动到页面的特定部分。问题是当我单击这些链接之一时,由于没有加载新页面,菜单仍然打开。

我希望实现一种解决方案,如果单击其中一个链接,菜单将默认关闭。我曾尝试使用 JS 隐藏单击时的菜单,但我认为我的逻辑可能是错误的。任何帮助都会很棒。

这是我的菜单代码。

<div id="my-id" class="uk-offcanvas custom_canvas">
   <div class="uk-offcanvas-bar">
      <div class="uk-panel">
         <a class="btn btn primary remove_image-div" onclick="UIkit.offcanvas.hide([force = false]);"> 
            <img src="img/remove_icon.png" class="remove_image" alt="remove">
         </a>
         <ul class="mm-list mm-panel mm-opened mm-subopened" id="mm-0">
            <li class="offcanvas_li">
               <a class="offcanvas_open" title="Samples" href="index.html#sample-section">Samples</a>
            </li>
            <li class="offcanvas_li">
               <a href="index.html#package-section" title="Packages" class="offcanvas_open">Packages</a>
            </li>
            <li class="offcanvas_li">
               <a href="#about-section" title="About" class="offcanvas_open">About</a>
            </li>
            <li class="offcanvas_li">
               <a href="contact.html" title="Contact" class="offcanvas_open">Contact</a>
            </li>
            <li class="offcanvas_li">
               <a href="blog.html" title="Blog" class="offcanvas_open">Blog</a>
            </li>
            <li class="offcanvas_li">
               <a class="offcanvas_open" title="We Love" href="we_love.html">We Love</a>
           </li> 
        </ul>
     </div>
  </div>
</div>

我不熟悉 UIkit.offcanvas 插件,但我可以稍微回答你,你可以添加它们(链接)所有属性 onclick="UIkit.offcanvas.hide([force = false]);"

更好(通用)解决方案是"listen"他们的click事件,然后,运行 offcanvas命令。

类似于:

$('.offcanvas_li a').click(function() {
   UIkit.offcanvas.hide([force = false]);
});

这个有效

    <script>
  function myFunction() {
  UIkit.offcanvas.hide([force = false])
  }</script>
<button onclick="myFunction()">Close Panel</button>