DOM contenteditable, выбирая родительский узел - PullRequest
0 голосов
/ 19 мая 2018

У меня есть следующий код:

<span class="outside">
    <span class="before">...</span>
    <span class="edit" contenteditable="true" autocomplete="off"
    autocorrect="off" autocapitalize="off" spellcheck="false">TEXT</span>
    <span class="after">...</span>
</span>
<style>
    .outside {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
    }
</style>

Проблема в том, что, если я выделю весь текст в диапазоне редактирования, как в Ctrl + A, Ctrl + X, Ctrl + V, торезультат, вставленный в область редактирования, будет:

<span class="outside">
    <span class="edit" contenteditable="true" autocomplete="off"
    autocorrect="off" autocapitalize="off" spellcheck="false">TEXT
    </span>
</span>

, а не только текстовый узел "TEXT".Я думал, что стиль помешает выбрать родителя, но, похоже, его игнорируют.Кстати, если я выберу только части «правки», появится та же проблема, только для скопированной и вставленной части.Здесь слишком сложно описать это, но я думаю, вы понимаете, о чем я.Как я могу предотвратить выбор родительского узла?И на самом деле сам узел «редактирования» тоже не должен быть выбран.Только текст.

...