javascript - 如何添加事件选择器

标签 javascript php jquery html css

<分区>

我需要添加一个事件选择器,以便在单击其中任何一个时,事件类将变为粗体。即使在页面刷新后,事件选择器也需要保持不变。

手册
国际
追踪
联系人
安全
报名
政策
疑难解答
促销事件
航运
条款
claim

     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

<div class="container">
  <div class="container-inner">
    {{breadcrumbs}}
    <div class="search-box search-box_page">
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 26">
    <path d="M20,18.9c1.6-2.1,2.4-4.6,2.4-7.2c0-6.4-5-11.7-11.2-11.7C5,0,0,5.3,0,11.7s5,11.7,11.2,11.7
          c2.5,0,5-0.9,6.9-2.5l4.6,4.8c0.3,0.3,0.6,0.4,0.9,0.4c0.3,0,0.7-0.1,0.9-0.4c0.5-0.6,0.5-1.4,0-2L20,18.9z M20,12
          c0,4.9-3.8,9-8.5,9s-9.1-4.1-9.1-9s4.4-9.5,9.1-9.5S20,7,20,12z"/>
  </svg>
  {{search instant=true placeholder=settings.search_placeholder}}
</div>

        <div class="section group">
    <div class="left-nav col span_1_of_2_">
    <h2 class="leftnav-title">Support</h2>
        <ul style="color:#333;">
      <a class="link-leftbar" href="www.test1.com"><li>Manuals</li></a>
      <a class="link-leftbar" href="www.test2.com"><li>International</li></a>
      <a class="link-leftbar" href="www.test3.com"><li>Tracking</li></a>
      <a class="link-leftbar" href="www.test4.com"><li>Contacts</li></a>
      <a class="link-leftbar" href="www.test5.com"><li>Security</li></a>
      <a class="link-leftbar" href="www.test6.com"><li>Registration</li></a>
      <a class="link-leftbar" href="www.test7.com"><li>Policy</li></a>
      <a class="link-leftbar" href="www.test8.com"><li>Troubleshooting</li></a>
      <a class="link-leftbar" href="www.test9.com"><li>Promotions</li></a>
      <a class="link-leftbar" href="www.test10.com"><li>Shipping</li></a>
      <a class="link-leftbar" href="www.test11.com"><li>Terms</li></a>
      <a class="link-leftbar" href="www.test12.com"><li>Claim</li></a>
      </ul>
    </div>
    <div class="col span_1_of_2">
        <div style="" class="category-tree" id="section">
      <section class="category-tree__item">
        <h2 class="category-tree__title">{{section.name}}</h2>
      <div class="accordion-wrapper">
  {{#each section.articles}}
  <ul data-toggle="collapse" data-target="#{{id}}" class="article-list article-list_page">
    <li class="article-list__item">
      <a href="javascript:void(0);" style="cursor: default;" class="art-title">{{title}}</a>
      <article style="font-weight:100;" id="{{id}}" class="article-body collapse art-body">
      {{body}}
      </article>
    </li>
  </ul>
  {{/each}}
</div>
    </div>
</div>


      </section>
      {{pagination}}
    </div>

  </div>
</div>

最佳答案

正如我在上面的评论中所说,我们在这里所做的是使用 localStorage.setItem 来保存事件链接并使用 localStorage.getItem 来检索他们是值(value)观。然后是 .addEventListner.removeEventListener 以确保单击链接后它会将类 active 添加到我们的链接和 localStorage

function makeActive(event) {
  event.target.classList.add('active')
  event.target.removeEventListener('click', makeActive)
  localStorage.setItem(event.target.href, 'active')
}


document
  .querySelectorAll('a.link-leftbar:not(.active)')
  .forEach(link => link.addEventListner('click', makeActive))

function setActiveLinksClass() {
  document
    .querySelectorAll('a.link-leftbar')
    .forEach(link => {
      if (localStorage.getItem(link.href) !== null)
        link.classList.add('active')
    })

document
  .addEventListener('DOMContentLoaded', setActiveLinksClass)

如果您不明白这些内容的含义,请查看评论中的链接。

关于javascript - 如何添加事件选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51215822/

上一篇:html - 使用 Bootstrap 4 的导航下拉悬停

下一篇:css - 固定在子元素上的位置有任何问题 - 当父元素具有绝对位置时?

相关文章:

javascript - Valums 文件 uploader - 仅允许单个文件上传

javascript - 从对象中获取键/值,执行功能并发回

jquery - 使用 jQuery html 动态添加嵌入的 ruby

php - 如何从 PHP 向 Postgres 插入 null

php - 这种方法可以防止重复操作吗?

javascript - Kendo TreeView - 仅将删除图像图标添加到没有子节点的父节点

c# - 如何从 aspx.cs 获取参数到 javascript

php - DataTable - 通过 Controller 中的客户 ID 限制 View

javascript - JQuery fadeToggle 在动态添加的元素上出现奇怪的副作用

javascript - 使用 jQuery 的 SPAN 内容条件