jQuery如何用输入按钮替换链接

jQuery如何用输入按钮替换链接,jquery,html,Jquery,Html,以下是我的项目: 菜单栏中有3个链接,打开3个不同的子菜单,每个子菜单包含一个关闭链接。 当链接悬停时,它们将显示页面url。为了避免这种情况,我想将(链接)更改为按钮。 Html: 我在其他示例中也可以这样做,但在本例中jQuery使用了(hash),这似乎是我无法用模仿的。 所以我的问题是:我可以将(链接)更改为按钮吗?(以及如何) 感谢您花时间帮助我:)已经修改了您的代码 选中此项: $('#menu_f_ll li input').click( //change here f

以下是我的项目:

菜单栏中有3个链接,打开3个不同的子菜单,每个子菜单包含一个关闭链接。

当链接悬停时,它们将显示页面url。为了避免这种情况,我想将(链接)更改为
按钮。

Html:

我在其他示例中也可以这样做,但在本例中jQuery使用了(hash),这似乎是我无法用
模仿的。

所以我的问题是:我可以将(链接)更改为
按钮吗?(以及如何)


感谢您花时间帮助我:)

已经修改了您的代码

选中此项:

$('#menu_f_ll li input').click( //change here

function (e) {
    e.preventDefault();
    animateSlider($(this).attr('tabid')); //change here
});
$('#menu_f_si div input').click( //change here

function (e) {
    e.preventDefault();

    animateSlider($(this).attr('tabid')); //change here
});

只需对
a
s使用一些自定义属性,而不是
href
。由于您使用的是
href
,浏览器决定添加工具提示,但是如果您使用了一些自定义名称,如
menuid
,而不是在javascript中使用
this.hash
,请使用
$(this.attr('menuid')

对于JavaScript:

animateSlider($(this).attr('menuid'));
而不是

animateSlider(this.hash);
<li><a href="#left">left menu</a></li>
对于HTML:

<li><a menuid="#left">left menu</a></li>
  • 这将消除浏览器工具提示。您需要添加一些CSS来替换手动光标:
    cursor:pointer
    a
    s

    看这个

    我已经更新了小提琴:删除所有链接

    使用数据属性打开菜单,并使用类而不是元素来绑定单击事件


    有了CSS,您可以使用
    光标:指针
    来指示
    li
    和关闭范围是可点击的。

    这是使用
    按钮
    ,但应该可以让您了解需要更改哪些内容才能完成所需操作。它用于隐藏url,但关闭按钮不起作用。数据散列像id吗?只有一个链接的地方?“当链接悬停时,它们会显示页面url。”–这是一个什么问题?我正在努力避免,特别是因为它不会离开页面…谢谢大家。。。这个地方太棒了!!!这正是我要找的!但在输入中使用href是否有效???这听起来可能很愚蠢:)你可以更改为任何id,比如tabid,等等,will chage并为你更新如果我理解正确的话,那么链接现在使用了一个(虚构的)属性,这非常好@DannyR.Thillemann,关键是不要使用
    href
    属性,因为这是一个特殊属性,告诉浏览器这是指向新页面的链接。我明白了。。。谢谢你为我解释:)@DannyR.Thillemann,这解决了你的问题了吗,还是有其他问题?这太完美了。。。谢谢上标!我认为这个答案很有用,但我是新来的,所以我必须等待声誉15:)
    <li><a menuid="#left">left menu</a></li>
    
    <li><a href="#left">left menu</a></li>