【问题标题】:how can i change selected text color using javascript如何使用 javascript 更改选定的文本颜色
【发布时间】:2014-12-10 00:15:43
【问题描述】:

我在 chrome 浏览器中。我有蓝色背景,文字颜色是白色。

问题:

当我选择并复制文本并粘贴到word中时,由于存在而无法看到文本。

是否有任何 javascript 可以在选择时更改文本颜色,以使复制的文本不是白色。

发现类似问题:

Javascript: How to detect if a word is highlighted

【问题讨论】:

    标签: javascript


    【解决方案1】:

    作为 JavaScript 的替代方案,如何使用 CSS 设置 ::selection 颜色(即背景突出显示的颜色)?

    如果您当前的背景是蓝色并且默认选择突出显示颜色是蓝色,请尝试将颜色更改为红色:

    ::selection {      /* WebKit Browsers */
      background: #ffb7b7;
    }
    ::-moz-selection { /* Gecko Browsers */
      background: #ffb7b7;
    }
    

    【讨论】:

    • 我尝试使用 ::selection,但这没有帮助。我想复制更改后的文本。因此,当我粘贴 word 时,我会得到新的更改文本
    【解决方案2】:

    这里可能有些问题,但它在 Chrome 中有效:

    document.addEventListener('copy', function() {
        event.preventDefault();
        event.clipboardData.setData("text/plain", document.getSelection().toString());
    }, false);
    

    【讨论】:

      【解决方案3】:

      终于明白了,

      我的解决方案是,

              var x = document.getElementById("elementID");
              function eventCopy() {
                  x.style.color = 'black';
                  x.addEventListener("mousemove", eventDispatch);
              }
              function eventDispatch() {
                  x.style.color = 'white';
                  console.log('h');
                  x.removeEventListener("mousemove", eventDispatch);
              }
              x.addEventListener("copy",eventCopy);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多