【问题标题】:How to highlight an HTML content and save it to the database for future loads如何突出显示 HTML 内容并将其保存到数据库以供将来加载
【发布时间】:2011-03-31 16:30:00
【问题描述】:

我试图在我使用 PHP + XSL 转换加载的 HTML 页面中突出显示选定的文本内容。 我已经看到了一些与突出显示当前选定文本相关的解决方案,但我需要将一些信息保存到数据库中,这样我才能突出显示相同的内容以供将来加载同一页面,处理文本可能包含的所有内部元素

这个想法很简单:模拟当您在书中使用记号笔时

有什么想法吗?任何建议将不胜感激。

提前谢谢你。

艾萨克

【问题讨论】:

    标签: php javascript jquery highlight selectedtext


    【解决方案1】:

    此功能可能会对您有所帮助。

    只需添加#:~:text=Highlight%20These

    尝试访问此链接进行演示

    https://stackoverflow.com/questions/38588721#:~:text=Highlight%20a%20text

    【讨论】:

      【解决方案2】:

      使用 AJAX。

      http://www.w3schools.com/Ajax/Default.Asp

      IMO、DOM 位置和 STRING 范围。

      类似的,

      DOM_LOCATION: div[0]>p[2]>span[1]
      STRING_RANGE: 2:20
      

      这意味着字符串用户从第 1 个 div 的第 3 段的第 2 个跨度的第 2 个字符到第 20 个字符突出显示,即以下示例中的“monstration of some”。

      <div>
          <p>This has no use.</p>
          <p><em>And so is</em> this one.</p>
          <p><span>This</span> is the <span>demonstration of something wonderful</span>.</p>
      </div>
      

      您需要做的就是反转 DOM 位置并使用范围。

      【讨论】:

      • 是的,我知道我将使用 AJAX 将其保存到数据库中,但是,我想知道哪种信息应该足以在未来加载该亮点。
      • 感谢您提供更具体的信息。您知道主要浏览器(IE、FF、CH)的范围值是否相同吗?我已经编写了 JS 代码,但我发现每个浏览器的 DOM 内部都有一些不同的字符(TAB、CR 等),这让我无法信任这些范围值。
      • 是的,专门用于 IE。如果您以非标准方式制作 html。 IE 尝试添加缺少的元素,如 tbody... 选项卡、多个空格和 CR 也被忽略。不过,如果您将这些字符写为 html 实体,我还没有尝试过。
      • 如果你要重新映射dom,你应该设置“容忍”规则。
      • 嗨 sheeks06 你有解决方案吗,现在我有同样的需求,卡在同一个地方,不知道如何以及将什么信息保存到数据库中,再次突出显示内容..请帮助
      猜你喜欢
      • 2021-08-31
      • 2019-11-12
      • 2023-03-17
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多