ユーザーがコンテンツを選択/強調表示できないが、入力できるコンテンツ編集可能な div を作成する方法はありますか? ユーザーがキーごとに削除したり入力したりしなければならず、ハイライトによる一括編集ができないインターフェイスを作成したいと考えています。
CSS の「ユーザー選択」プロパティのさまざまな形式を調べました。これは静的コンテンツでは機能しますが、コンテンツ編集可能な要素/入力では機能しないようです。
何か案は?
ありがとう
ユーザーがコンテンツを選択/強調表示できないが、入力できるコンテンツ編集可能な div を作成する方法はありますか? ユーザーがキーごとに削除したり入力したりしなければならず、ハイライトによる一括編集ができないインターフェイスを作成したいと考えています。
CSS の「ユーザー選択」プロパティのさまざまな形式を調べました。これは静的コンテンツでは機能しますが、コンテンツ編集可能な要素/入力では機能しないようです。
何か案は?
ありがとう
textarea
contenteditable の代わりに aを受け入れることができる場合は、次のdiv
ようにすることができます。
window.onload = function () {
var div = document.getElementById('div');
if (div.attachEvent) {
div.attachEvent('onselectstart', function (e) {
e.returnValue = false;
return false;
});
div.attachEvent('onpaste', function (e) {
e.returnValue = false;
return false;
});
} else {
div.addEventListener('paste', function (e) {
e.preventDefault();
});
div.addEventListener('select', function (e) {
var start = this.selectionStart,
end = this.selectionEnd;
if (this.selectionDirection === 'forward') {
this.setSelectionRange(end, end);
} else {
this.setSelectionRange(start, start);
}
});
}
};
HTML:
<form>
<textarea id="div"></textarea>
</form>
コードに関するいくつかの観察:
onselect
に対してのみ起動されます。これが、HTML があなたのものと異なる理由です。input
textarea
form
selectionDirection
.div
でも動作します。編集
私もあなたの「宿題」をやったようです。