Movatterモバイル変換


[0]ホーム

URL:


  1. 開発者向けのウェブ技術
  2. Web API
  3. Element
  4. HTMLElement: beforeinput イベント

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。

View in EnglishAlways switch to English

HTMLElement: beforeinput イベント

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2021年3月.

DOM のbeforeinput イベントは、<input> または<textarea> 要素の値が変更されようとしているときに発生します。 このイベントは、contenteditable が有効になっている要素、およびdesignMode がオンになっている要素にも適用されます。

これにより、ブラウザーが DOM ツリーを変更する前に、ウェブアプリがテキスト編集の動作を上書きすることができ、入力イベントをより詳細に制御してパフォーマンスを向上させることができます。

contenteditabledesignMode の場合、イベントのターゲットは編集ホストです。これらのプロパティが複数の要素に適用された場合、編集ホストは、親が編集可能ではない直近の先祖要素になります。

構文

このイベント名をaddEventListener() などのメソッドで使うか、イベントハンドラープロパティを代入するかします。

js
addEventListener("beforeinput", (event) => {});onbeforeinput = (event) => {};

イベント型

InputEvent です。Event から継承しています。

Event UIEvent InputEvent

イベントプロパティ

このインターフェイスには、親であるUIEvent およびEvent から継承したプロパティがあります。

InputEvent.data読取専用

挿入された文字を文字列で返します。変更によって挿入されたテキストがない場合は、空文字列になることがあります(文字を削除した場合など)。

InputEvent.dataTransfer読取専用

編集可能なコンテンツに追加または削除されるリッチテキストまたはプレーンテキストデータに関する情報が入ったDataTransfer オブジェクトを返します。

InputEvent.inputType読取専用

編集可能なコンテンツの変更の種類、例えばテキストの挿入、削除、整形などを返します。入力型の完全なリストについては、プロパティページを参照してください。

InputEvent.isComposing読取専用

論理値で、このイベントがcompositionstart の後、compositionend の前に発生したかどうかを示します。

機能の検出

以下の関数は、beforeinput およびgetTargetRanges に対応していれば true を返します。

js
function isBeforeInputEventAvailable() {  return (    window.InputEvent &&    typeof InputEvent.prototype.getTargetRanges === "function"  );}

単純なロガー

この例では、<input> 要素に適用された新しい値に置き換える直前に、要素の現在の値をログに記録します。

HTML

html
<input placeholder="テキストを入力" name="name" /><p></p>

JavaScript

js
const input = document.querySelector("input");const log = document.getElementById("values");input.addEventListener("beforeinput", updateValue);function updateValue(e) {  log.textContent = e.target.value;}

結果

仕様書

Specification
UI Events
# event-type-beforeinput

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2026 Movatter.jp