javascript - JQuery 如何给选定的文本添加 <span> 标签

标签 javascript jquery html css

我有一个很大的段落,例如这样

<p> hello this is my paragraph </p>

所以我想在全文中给选中的文本附加一个标签 所以如果我强调“我的段落” 我希望段落如下所示

<p> hello this is <span>my paragraph</span></p>

谢谢大家

最佳答案

我正在搜索您的答案并找到:Add tags around selected text in an element .

这是我从提供的链接复制的主要代码。

<p> My sample paragraph </p>

<style>
    span {color: red;}
</style>
<script type="text/javascript">

    function getSelectedText() {
        t = (document.all) ? document.selection.createRange().text : document.getSelection();
        return t;
    }

    $('body').mouseup(function(){
        var selection = getSelectedText();
        var selection_text = selection.toString();

        // How do I add a span around the selected text?

        var span = document.createElement('SPAN');
        span.textContent = selection_text;

        var range = selection.getRangeAt(0);
        range.deleteContents();
        range.insertNode(span);
    });

</script>

关于javascript - JQuery 如何给选定的文本添加 <span> 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53909535/

相关文章:

iphone - CSS/HTML iphone 在背景图像位置的边缘周围放置了一些额外的空间。我该如何删除它?

javascript - 下拉菜单的 CSS 与 Javascript(或库 js)

jquery - 自定义单选框 CSS 发生变化

javascript - Ajax 导航/浏览器返回

html - 覆盖 CSS 类以删除填充

javascript - 如何连续自动上下滚动div

javascript - 如何访问 angularjs promise 中的数据?

javascript - Webgl 无法运行示例(黑屏)

javascript - JavaScript 中的 ~~ 是什么?

jquery - 为什么图像闪烁?