Document.queryCommandEnabled() - 編集コマンドを実行できるか確認する
queryCommandEnabled()は、Documentのメソッドです。編集コマンドを実行できる状態か否か確認します。例えば、"copy"や"paste"など、利用するのに特定の条件が必要なコマンドは、サポートしていてもfalseが返ることがあります。
概要
- 名前
- queryCommandEnabled
- 所属
- Document
- IDL
boolean queryCommandEnabled(DOMString commandId);
- 仕様書
- https://w3c.github.io/editing/execCommand.html#querycommandenabled%28%29
説明
引数(commandId)には、対象の編集コマンドを表す文字列を指定します。
コマンドを実行できる場合はtrue、できない場合はfalseを返します。
デモ
Document.queryCommandEnabled()のデモです。4種類の編集コマンドを調べます。例えば、"copy"はfalseになります。これは、この編集コマンドを実行するのに、クリックするなど、ユーザーのアクションが必要だからです。このユーザーのアクションがない状況で確認した場合は、実行できないことを表すfalseが返ります。
<!-- このコードは編集できます。 -->
<!DOCTYPE html>
<head>
<style>
div#result { white-space: pre-wrap ; }
</style>
</head>
<body>
<div id="result"></div>
<script>
for ( var a=[ "selectAll", "copy", "paste", "cut" ], i=0, l=a.length; l>i; i++ ) {
var response = document.queryCommandEnabled( a[i] ) ;
console.log( a[i], result ) ;
document.getElementById( "result" ).textContent += a[i] + ": " + response + "\n" ;
}
</script>
</body>
</html>
サポート状況
Chrome | Firefox | Safari | Edge | IE | Opera | iOS Safari | Android |
---|---|---|---|---|---|---|---|
● | ● | ● | ● | ● | ● | ● | ● |
関連記事
- FormData.append()
- append()は、FormDataのメソッドです。フォームにデータを追加します。
- Document.execCommand()
- execCommand()は、Documentのメソッドです。編集コマンドを実行します。
- Document.URL
- URLは、Documentのプロパティです。ドキュメントに関連付けられたURLアドレスを返します。Location.hrefと値は同じです。
- Document.queryCommandSupported()
- queryCommandSupported()は、Documentのメソッドです。編集コマンドをサポートしているか否か確認します。