【问题标题】:CSS of previous list of elements gets applied to new list of elements in javascript先前元素列表的 CSS 应用于 javascript 中的新元素列表
【发布时间】:2018-08-13 10:30:43
【问题描述】:

我有 6 个<div>,它们充当不同的应用程序。每个<div> 包含一个菜单,每个菜单包含子菜单,这是一个无序列表。 每个子菜单都包含<img><p> 标签。

我创建了一个后退按钮,因为我将在每个<div>、菜单和子菜单之间进行遍历。所有这些元素都有一个 ID。

我创建了一个数组来存储我将使用的所有元素列表的历史记录

var pageHistory = { "History": [] };

点击每个<div>、菜单和子菜单时,我使用pageHistory.History.push(menu);将它们添加到pageHistory数组中

这工作正常。 但是当我点击后退按钮并从一个<div> 转到另一个<div> 时,之前选择的<div> 的子菜单的CSS 将应用于新选择的<div> 的子菜单。

另外,当我点击后退按钮时,所选菜单不会突出显示。

我想按原样更改每个元素的 CSS,并在单击后退按钮时突出显示选定的菜单和子菜单。

【问题讨论】:

  • 如果您提供代码和示例标记以及仅描述代码和标记,将更容易回答。

标签: javascript jquery html css ajax


【解决方案1】:

现代 Web 应用程序经常通过 AJAX 在不离开原始页面的情况下加载文档对象模型 (DOM) 中的数据或更改,以创建类似桌面的体验。为此,我们可以利用 URL 哈希值和它给我们带来的好处,包括客户端使用的带宽更少、响应时间更快以及最终更具交互性的应用程序感觉。通过在 URL 中插入一个哈希字符,我们可以获取它后面的字符串并将其用作 AJAX 请求中的值。我们还可以创建一个侦听器事件来检查添加到 URL 的哈希值,并使用它来激活自定义 JavaScript。

因此,请使用哈希更改并使用 js 激活您的自定义 css

【讨论】:

    猜你喜欢
    • 2014-06-09
    • 1970-01-01
    • 2013-05-28
    • 1970-01-01
    • 2021-03-24
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    相关资源
    最近更新 更多