4

我正在尝试将一些选定的元素包装在<blockquote>标签中,但我认为可能有效的方法会替换现有标签而不是包装它们。

这是我的代码。

$("input[value='Quote']").on("click", function() {
    document.execCommand('formatBlock', false, '<blockquote>');
});

和...

<div contentEditable>
    <p>para 1</p>
    <p>para 2</p>
</div>

<input type="button" value="Quote" />

我想结束这样的事情......

<div contentEditable>
    <blockquote>
        <p>para 1</p>
        <p>para 2</p>
    </blockquote>
</div>

而不是我目前得到的以下内容......

<div contentEditable>
    <blockquote>
        para 1
        <br />
        para 2
    </blockquote>
</div>

谢谢

4

1 回答 1

1

这应该这样做

$("input[value='Quote']").on("click", function() {
  $("<blockquote/>").insertBefore($("[contenteditable]").find("p:first")).append($("[contenteditable]").find("p"))
});
于 2013-01-29T11:22:58.490 回答