当我在topmenu中点击li
时,应显示另一个div
块的ul
。
我在Topmenu中ul
li
是这样的:
<ul class="level0" style="width: 925px;">
<li class="level1">
<a href="">Shop By Collection</a>
</li>
<li class="level1">
<a href="">Shop By feature</a>
</li>
<li class="level1">
<a href="">All category</a>
</li>
</ul>
在另一个街区,我有ul
li
这样:
<ul class="cat-list-1">
<?php foreach ($cats as $cat): ?>
<li class="category-li-1">
<a href= "<?php echo $_helper->getCategoryUrl($cat) ?>" >
<div class="main-cat-1" ><?php echo $cat->getName() ?> </div>
</a>
<?php $_category = Mage::getModel('catalog/category')->load($cat->getId()) ?>
<?php $_subcategories = $_category->getChildrenCategories() ?>
<?php if (count($_subcategories) > 0): ?>
<div class="sub-cat-1 " style="display:none;">
<ul class="subcat-list-1">
<?php foreach($_subcategories as $_subcategory): ?>
<li>
<a href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>">
<?php echo $_subcategory->getName() ?>
</a>
</li>
<?php endforeach; ?>
</ul>
</div>
<?php endif; ?>
</li>
<?php endforeach; ?>
</ul>
当我在topmenu中点击a
的锚标记level1
时,<div class="sub-cat-1 ">
应切换并显示。
我试过的jquery是这样的:
<script>
var $j = jQuery.noConflict();
$j(function() {
$j('li.level1 a').click(function(e) {
$j('div.sub-cat-1:visible').hide();
$j('div.sub-cat-1', this).toggle();
});
});
</script>
但是当我点击level 1
时,div sub-cat-1
没有打开(即)div
没有切换。如果我错了,请有人纠正我。
答案 0 :(得分:0)
只要display设置为none,你就可以尝试强制它显示你想要的东西,但是浏览器在渲染的上下文中没有丝毫的线索。
你会想要使用“visibility:hidden;”在sub-cat-1 div而不是“display:none;”我希望它能正常工作:)