这是我的项目:jsFiddle
在菜单栏中有 3 个链接,打开 3 个不同的子菜单,每个子菜单都包含一个关闭链接。
当链接悬停时,它们会显示页面 url。为避免这种情况,我想将(链接)更改为<input>
按钮。
网页:
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<div id="menu_f_si">
<div id="middle_popup">
<h1>Middle</h1>
<p>Bla bla bla bla bla</p>
<a href="#middle">Close</a>
</div>
<div id="right_popup">
<h1>Right</h1>
<p>Bla bla bla bla bla</p>
<a href="#right">Close</a>
</div>
<div id="left_popup">
<h1>Left</h1>
<p>Bla bla bla bla bla</p>
<a href="#left">Close</a>
</div>
</div>
<div id="menu_f_li">
<ul id="menu_f_ll">
<li><a href="#left">left menu</a></li>
-
<li><a href="#middle">middle menu</a></li>
-
<li><a href="#right">right menu</a></li>
</ul>
</div>
jQuery :
$(document).ready(
function()
{$('#menu_f_ll li a').click(
function(e)
{e.preventDefault();
animateSlider(this.hash);
}
);
$('#menu_f_si div a').click(
function(e)
{e.preventDefault();
animateSlider(this.hash);
}
);
function animateSlider(hash)
{if (!$('#menu_f_si div.open').length)
{if (hash == '#middle') {openPopup(hash);}
if (hash == '#right') {openPopup(hash);}
if (hash == '#left') {openPopup(hash);}
}
else
{if (hash == '#middle') {openAndClose(hash)}
if (hash == '#right') {openAndClose(hash)}
if (hash == '#left') {openAndClose(hash)}
}
}
function openPopup(hash)
{$(hash + '_popup').slideToggle().addClass('open');}
function openAndClose(hash)
{if ($(hash + '_popup').hasClass('open'))
{$($(hash + '_popup')).slideToggle().removeClass();}
else
{$('#menu_f_si div.open').slideToggle().removeClass();
$(hash + '_popup').slideToggle().addClass('open');
}
}
}
);
我已经能够在其他示例中这样做,但在这种情况下,jQuery 使用 (hash) 我似乎无法用<input>
.
所以我的问题是:我可以将(链接)更改为<input>
按钮吗?(以及如何)
感谢您抽出宝贵的时间来帮助我 :)