diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/ja/web/api/datatransfer/items | |
parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip |
initial commit
Diffstat (limited to 'files/ja/web/api/datatransfer/items')
-rw-r--r-- | files/ja/web/api/datatransfer/items/index.html | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/files/ja/web/api/datatransfer/items/index.html b/files/ja/web/api/datatransfer/items/index.html new file mode 100644 index 0000000000..e37ce35154 --- /dev/null +++ b/files/ja/web/api/datatransfer/items/index.html @@ -0,0 +1,119 @@ +--- +title: DataTransfer.items +slug: Web/API/DataTransfer/items +tags: + - API + - HTML DOM + - Property + - Reference + - drag and drop +translation_of: Web/API/DataTransfer/items +--- +<div>{{APIRef("HTML Drag and Drop API")}}</div> + +<p>読み取り専用の {{domxref("DataTransfer")}} プロパティの <code>items</code> プロパティは、ドラッグ操作での {{domxref("DataTransferItemList", "list")}} の {{domxref("DataTransferItem", "DataTransfer items")}} です。リストには操作中の項目ごとに1つの項目が含まれており、操作中に項目がなかった場合はリストは空になります。</p> + +<h2 id="シンタックス">シンタックス</h2> + +<pre class="syntaxbox notranslate"><em>itemList</em> = <em>dataTransfer</em>.items; +</pre> + +<h3 id="戻り値">戻り値</h3> + +<p>ドラッグ操作でドラッグされる項目を表す {{domxref("DataTransferItem")}} オブジェクトを含む {{domxref("DataTransferItemList")}} オブジェクトで、ドラッグされるオブジェクトごとに1つのリスト項目があります。ドラッグ操作にデータがない場合、リストは空です。</p> + +<h2 id="例">例</h2> + +<p>この例では、<code>items</code> と{{domxref("DataTransfer.types", "types")}} プロパティを使用しています。</p> + +<pre class="brush: js notranslate"><!DOCTYPE html> +<html lang=ja> +<title>DataTransfer.{types,item}プロパティの例</title> +<meta content="width=device-width"> +<style> + div { + margin: 0em; + padding: 2em; + } + #target { + border: 1px solid black; + } +</style> +<script> +function dragstart_handler(ev) { + console.log("dragStart: target.id = " + ev.target.id); + // この要素の id をドラッグ ペイロードに追加し、 + // drop ハンドラがどの要素をツリーに追加するかを知ることができるようにします。 + ev.dataTransfer.setData("text/plain", ev.target.id); + ev.dataTransfer.effectAllowed = "move"; +} + +function drop_handler(ev) { + console.log("drop: target.id = " + ev.target.id); + ev.preventDefault(); + // ターゲットの ID を取得し、移動した要素をターゲットの DOM に追加します。 + var data = ev.dataTransfer.getData("text"); + ev.target.appendChild(document.getElementById(data)); + // 各フォーマットタイプをプリントする + if (ev.dataTransfer.types != null) { + for (var i=0; i < ev.dataTransfer.types.length; i++) { + console.log("... types[" + i + "] = " + ev.dataTransfer.types[i]); + } + } + // 各項目の "kind" と "type" をプリントする + if (ev.dataTransfer.items != null) { + for (var i=0; i < ev.dataTransfer.items.length; i++) { + console.log("... items[" + i + "].kind = " + ev.dataTransfer.items[i].kind + " ; type = " + ev.dataTransfer.items[i].type); + } + } +} + +function dragover_handler(ev) { + console.log("dragOver"); + ev.preventDefault(); + // dropEffect を移動するように設定します。 + ev.dataTransfer.dropEffect = "move" +} +</script> +<body> +<h1><code>DataTransfer</code>.{<code>types</code>, <code>items</code>} プロパティの例</h1> + <ul> + <li id="i1" ondragstart="dragstart_handler(event);" draggable="true">アイテム1をドロップゾーンにドラッグ</li> + <li id="i2" ondragstart="dragstart_handler(event);" draggable="true">アイテム2をドロップゾーンにドラッグ</li> + </ul> + <div id="target" ondrop="drop_handler(event);" ondragover="dragover_handler(event);">ドロップゾーン</div> +</body> +</html> +</pre> + +<h2 id="仕様">仕様</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">仕様書</th> + <th scope="col">ステータス</th> + <th scope="col">コメント</th> + </tr> + <tr> + <td>{{SpecName("HTML WHATWG", "interaction.html#dom-datatransfer-items", "items")}}</td> + <td>{{Spec2("HTML WHATWG")}}</td> + <td></td> + </tr> + <tr> + <td>{{SpecName("HTML5.1", "editing.html#dom-datatransfer-items", "items")}}</td> + <td>{{Spec2("HTML5.1")}}</td> + <td>初期定義</td> + </tr> + </tbody> +</table> + +<h2 id="ブラウザの互換性">ブラウザの互換性</h2> + +<div class="hidden">このページの互換性一覧表は、構造化データから生成されています。データに貢献したい方は、https://github.com/mdn/browser-compat-data をチェックしてプルリクエストを送ってください。</div> + +<p>{{Compat("api.DataTransfer.items")}}</p> + +<h2 id="あわせて参照">あわせて参照</h2> + +<p>{{page("/ja/docs/Web/API/DataTransfer", "あわせて参照")}}</p> |