【问题标题】:Javascript: dynamically set window selection or select a particular text from an elementJavascript:动态设置窗口选择或从元素中选择特定文本
【发布时间】:2013-10-17 04:52:08
【问题描述】:

首先标题与本题相同:JavaScript Set Window selection

但是这个问题的标题不好,因为他想知道如何选择或清除当前选择,答案是如何清除选择。

问题是,如何使用 java 脚本动态/编程地在元素(div、p、b 等)上创建选择?基本上,如何动态突出显示元素内的文本?

关于如何突出显示特定元素的所有文本有很多答案,但是对于如何突出显示元素的特定文本没有答案 /strong>。

【问题讨论】:

    标签: javascript selection


    【解决方案1】:

    您可以从这里获得一些信息:http://quirksmode.org/dom/range_intro.html

    编辑:

    您需要遍历正确的元素节点,以便突出显示该元素内的特定文本。所以selectParticular(elem, start, end)中的元素必须是文本元素,否则会报错。

    您可以使用以下代码动态突出显示/选择元素的所有文本:

    function selectAll(elem){
       var range = document.createRange();
        range.setStart(elem, 0);
        range.setEnd(elem, 1);
        window.getSelection().addRange(range);
    }
    

    您可以通过以下方式突出显示/选择元素上的特定文本:

    function selectParticular(elem, start, end){
        var range = document.createRange();
        range.setStart(elem.firstChild, start);
        range.setEnd(elem.firstChild, end);
        window.getSelection().addRange(range);
    }
    

    请注意,在将 compatibility table 实施到您的网站之前,您必须看到它

    【讨论】:

      猜你喜欢
      • 2011-09-05
      • 1970-01-01
      • 2021-09-19
      • 1970-01-01
      • 2021-12-21
      • 2011-11-30
      • 2012-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多