javascript - Bootstrap 2.3 导航栏事件菜单不起作用?

标签 javascript jquery css twitter-bootstrap nav

当你点击任何链接时,我试图让导航栏聚焦白色。

代码如下:

$('.navbar li').click(function (e) {
    $('.navbar li.active').removeClass('active');
    var $this = $(this);
    if (!$this.hasClass('active')) {
        $this.addClass('active');
    }
    e.preventDefault();
});

如您所见,这工作正常。我单击哪个链接都会激活(白色),而其他链接会变暗。

但如您所见,e.preventDefault(); 阻止了链接操作。当我摆脱那条线时,它会完全刷新整个页面,然后我再次失去事件链接。我有点需要或使用 ajax 来加载页面内容(我不喜欢这样做)或者还有其他方法吗?

最佳答案

我至少可以想到几种方法来解决这个问题

  1. 在客户端处理

    例如。

    假设 url 模式以某种方式与按钮链接匹配,在这种情况下,在 javascript 中操作 url 字符串以找到相应的事件元素并使其成为事件类

  2. 将逻辑保留在服务器端,并相应地呈现 UI——假设您可能使用服务器端后端

    例如。在 PHP 中

    // set the active element 
    $activeLink = 'link1';
    // when rendering 
    <li class = <?= ($activeLink == 'link1') ? 'active' : '';?> ><a>link1</a></li>
    

关于javascript - Bootstrap 2.3 导航栏事件菜单不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22409883/

相关文章:

javascript - PHP SERVER 属性在 javascript 下的函数中不起作用?

javascript - 如何监听 img 标题属性的更改?

java - GWT devmode netbeans - 错误

javascript - 使用 required 属性动态生成单选按钮

javascript - Basic JavaScript - 如何让某行代码在提示/包含提示的函数之前运行?

javascript - 带类固醇 js 的电话 JS

javascript - 正文加载 HTML 运行 href 链接

javascript - 如何在弹出窗口中显示 jquery 验证错误消息?

javascript - 您可以从 iFrame 子项修改父项的 CSS 属性吗?

javascript - 如何在自定义表单验证器的字段上显示错误?