Javascript 如何制作<;a="#&引用&燃气轮机;链接变成一个真正的功能链接后,使用jQuery类删除和添加?

Javascript 如何制作<;a="#&引用&燃气轮机;链接变成一个真正的功能链接后,使用jQuery类删除和添加?,javascript,jquery,Javascript,Jquery,> 我尝试了以下代码: $(function(){ $('ul li a').on('click', function(){ $(this).parent().addClass('current').siblings().removeClass('current'); }); }); 如果我使用#作为链接,它会起作用 <ul> <li class="current"><a href="#">menu item1&

>

我尝试了以下代码:

$(function(){
$('ul li a').on('click', function(){
    $(this).parent().addClass('current').siblings().removeClass('current');
  });
});

如果我使用#作为链接,它会起作用

<ul>
                <li class="current"><a href="#">menu item1</a></li>
                <li><a href="#aaa">menu item2</a></li>
                <li><a href="#bbb">menu item3</a></li>
                <li><a href="#ccc">menu item4</a></li>
                <li><a href="#ddd">menu item5</a></li>
                <li><a href="#eee">menu item6</a></li>
            </ul>

but when i change those #links into a real link as in #ccc to ccc.php and so on for the rest of the link and click onto the ccc.php for example as below
<ul>
                    <li class="current"><a href="menu1.php">menu item1</a></li>
                    <li><a href="aaa.php">menu item2</a></li>
                    <li><a href="bbb.php">menu item3</a></li>
                    <li><a href="ccc.php">menu item4</a></li>
                    <li><a href="ddd.php">menu item5</a></li>
                    <li><a href="eee.php">menu item6</a></li>
                </ul>
但当我将这些链接更改为真正的链接时,如#ccc到ccc.php等,然后单击ccc.php,例如如下所示
以下是我的总体代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
            <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
            <head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
                <script type="text/javascript" charset="utf-8">

            $(function(){
                    $('ul li a').on('click', function(){
                        $(this).parent().addClass('current').siblings().removeClass('current');
                      });
                    });
                </script>


        </head>
        <body>
           <ul>
                <li class="current"><a href="menu1.php">menu item1</a></li>
                <li><a href="aaa.php">menu item2</a></li>
                <li><a href="bbb.php">menu item3</a></li>
                <li><a href="ccc.php">menu item4</a></li>
                <li><a href="ddd.php">menu item5</a></li>
                <li><a href="eee.php">menu item6</a></li>
            </ul>

</body>
</html>

$(函数(){
$('ul li a')。在('click',function()上{
$(this).parent().addClass('current').sides().removeClass('current');
});
});
。它会将突出显示从“菜单项1”更改为“菜单项4”,然后立即将突出显示更改为“菜单项1”。我是不是在不知不觉中错过了什么


谢谢。

您的链接会更改页面,因此您必须在页面加载时突出显示正确的链接(因为javascript在到达新页面时“丢失”),这意味着您必须识别当前页面并相应地将类添加到正确的链接。

您应该防止链接的默认行为,如下所示

如果您想使用href中的链接,则可以使用this.href

$(function(){
       $('ul li a').on('click', function(e){
       e.preventDefault();
       $(this).parent().addClass('current').siblings().removeClass('current');
       /* you can use this.href that contain the href value */
  });
});

如果您没有取消对这些URL的导航,那么将加载另一个页面。您是否阻止默认操作(即导航)?请在问题中包含您的javascript。指向Fiddle的链接只应提供快速测试方法,不应成为问题的重要组成部分。好的,我将在内部使用javascript代码编辑问题。或者,可以使用ajax加载内容,具体取决于单击的链接,但您的解决方案更简单(例如浏览器历史记录)。谢谢您的回复。我不太明白你在说什么。对不起,我还是个初学者。你有一些示例代码供我参考吗。非常感谢各位的指导,我非常感谢。这有助于让我知道该找什么。非常感谢你的反馈。如果你认为这是一个有用的答案,我将非常感激,如果你能这样标记它。谢谢