そこで、アコーディオン スタイルのメニューを使用しています (これが適切な用語だと思います)。ここでの独特の難しさは、私が Lemonstand の統合 CMS システムを使用していることだと思います。何人の人がレモンスタンドの API などに精通しているのかはわかりませんが、最初にヘルプを探すためにここに投稿することにしました。
私が探しているのは、クリックした後も「ドロップダウン」を開いたままにすることです。使用されている JS は次のとおりです。
<script>
function initMenu() {
$('#menu ul').hide(); // Hide the submenu
if ($('#menu li').has('ul')) $('#menu ul').prev().addClass('expandable'); // Expand/collapse a submenu when it exists
$('.expandable').click(function(e) { // Prevent Default
e.preventDefault();
$(this).next().slideToggle();
$(this).toggleClass('expanded');
}
);
}
// When document ready, call initMenu() function
$(document).ready(function() {initMenu();}); </script>
これはかなり簡単だと確信していますが、js に関する限り、私は全体にまったく慣れていません。
<? $category_listing = isset($parent) ? $parent->list_children('front_end_sort_order') : Shop_Category::create()->list_root_children('front_end_sort_order'); ?>
<? if ($category_listing->count()): ?>
<? if (!isset($parent)): ?>
<nav>
<ul id="menu">
<? else: ?>
<ul>
<? endif ?>
<? foreach ($category_listing as $_category): ?>
<li<?= (isset($category) && $category->id == $_category->id) ? ' class="current"' : '' ?>>
<a href="<?= $_category->page_url('bifrost-sandbox/category') ?>"><?= h($_category->name) ?></a>
<? $this->render_partial('sandbox:temp', array('parent' => $_category)) ?>
</li>
<? endforeach ?>
</ul>
<? if (!isset($parent)): ?>
<nav>
<? endif ?>
<? endif ?>
誰かが私を助けることができれば、私はそれを大いに感謝します.