1
我是JQuery的新手,嘗試編寫JQuery代碼來創建多級下拉菜單。該HTML看起來象下面這樣:
<ul id="menu">
<li><a href="#">Link 1</a>
<ul class="submenu">
<li><a href="#">Sub Link 1.1</a>
<ul class="submenu">
<li><a href="#"> Sub Link 1.1.1</a></li>
<li><a href="#"> Sub Link 1.1.2</a></li>
</ul>
</li>
<li><a href="#">Sub Link 1.2</a></li>
<li><a href="#">Sub Link 1.3</a></li>
</ul>
</li>
<li><a href="#">Link 2</a>
<ul class="submenu">
<li><a href="#">Sub Link 2.1</a>
<ul class="submenu">
<li><a href="#"> Sub Link 2.1.1</a></li>
<li><a href="#"> Sub Link 2.1.2</a></li>
</ul>
</li>
<li><a href="#">Sub Link 2.2</a></li>
</ul>
</li>
</ul>
jQuery代碼我走到這一步,是爲下,但它沒有打開和關閉submenus.How我可以使它工作嗎?
$(document).ready(function() {
$('#ul.menu > li').hover(function() { $('ul:first', this).show(); },
function() { $('ul:first', this).hide(); }
);
$('#ul.menu li li').hover(function() {
$('ul:first', this).each(function() {
var p = $(this).parent();
$(this).css('top', p.position().top)
.css('left', p.position().left + p.width())
.show();
});},
function() { $('ul:first', this).hide(); }
);
});
這似乎工作非常好..但是,我想介紹一個子菜單項或菜單隱藏之前1秒的延遲。我怎麼做? – Jake
您可以添加一個數字參數來隱藏每個函數,比如hide(1000),它會指定隱藏效果的持續時間並使其平滑 –
它正在添加延遲,但並不完全以可用的方式。我想添加類似於此鏈接中菜單功能的延遲..這可能嗎? http://javascript-array.com/scripts/multi_level_drop_down_menu/?st – Jake