Baseline Widely available
DataTransfer.dropEffect
ããããã£ã¯ããã©ãã°ï¼ããããæä½ä¸ã«ã¦ã¼ã¶ã¼ã«ä¸ãããããã£ã¼ãããã¯ï¼é常ã¯è¦è¦çï¼ãå¶å¾¡ãã¾ããããã¯ããã©ãã°ä¸ã«è¡¨ç¤ºãããã«ã¼ã½ã«ã«å½±é¿ãã¾ããä¾ãã°ãã¦ã¼ã¶ã¼ãã¿ã¼ã²ããã®ããããè¦ç´ ã®ä¸ã«ã«ã¼ã½ã«ãç½®ãã¨ããã©ã¦ã¶ã¼ã®ã«ã¼ã½ã«ããã©ã®ç¨®é¡ã®æä½ãçºçãããã示ããã¨ãã§ãã¾ãã
DataTransfer
ãªãã¸ã§ã¯ãã使ããã¨ã dropEffect
ã«ã¯æååã®å¤ãè¨å®ããã¾ããå徿ã«ã¯ãç¾å¨ã®å¤ãè¿ãã¾ããè¨å®æãæ°ããå¤ã以ä¸ã®å¤ã®ããããã§ããã°ãããããã£ã®ç¾å¨ã®å¤ãæ°ããå¤ã«è¨å®ããããã以å¤ã®å¤ã¯ç¡è¦ããã¾ãã
dragenter
ããã³ dragover
ã¤ãã³ãã§ã¯ãã¦ã¼ã¶ã¼ãã©ã®ãããªæä½ãè¦æ±ãã¦ãããã«åºã¥ãã¦ãdropEffect
ãåæåããã¾ãããããã©ã®ããã«æ±ºå®ãããã¯ãã©ãããã©ã¼ã ã«ãã£ã¦ç°ãªãã¾ãããé常ãã¦ã¼ã¶ã¼ã¯ alt ãã¼ãªã©ã®ä¿®é£¾ãã¼ãæ¼ãã¦ã叿ããæä½ã調æ´ãããã¨ãã§ãã¾ããdragenter
㨠dragover
ã¤ãã³ãã®ã¤ãã³ããã³ãã©ã¼å
ã§ã¯ãã¦ã¼ã¶ã¼ãè¦æ±ãã¦ããæä½ã¨ã¯ç°ãªãæä½ãå¿
è¦ãªå ´åãdropEffect
ãä¿®æ£ããå¿
è¦ãããã¾ãã
drop
ããã³ dragend
ã¤ãã³ãã§ã¯ã dropEffect
ã«å¸æããåä½ãè¨å®ããã¾ããããã¯ã dropEffect
ãååã® dragenter
ã¾ã㯠dragover
ã¤ãã³ãã®å¾ã«æãã¦ããå¤ã¨ãªãã¾ããä¾ãã° dragend
ã¤ãã³ãã«ããã¦ãæã¾ãã dropEffect ã "move" ã§ããã°ããã©ãã°ããããã¼ã¿ãã½ã¼ã¹ããåé¤ããå¿
è¦ãããã¾ãã
æååã§ããã©ãã°æä½ã®å¹æã表ãã¾ããåãããå¤ã¯ä»¥ä¸ã®éãã§ãã
copy
æ°ããå ´æã«ã½ã¼ã¹ã¢ã¤ãã ã®ã³ãã¼ã使ããã¾ãã
move
ã¢ã¤ãã ãæ°ããå ´æã«ç§»åãã¾ãã
link
æ°ããå ´æã®ã½ã¼ã¹ã«ãªã³ã¯ã確ç«ããã¾ãã
none
ã¢ã¤ãã ã¯ããããããªãå ´åãããã¾ãã
dropEffect
ã«ä»ã®å¤ã代å
¥ãã¦ã广ã¯ãªããå¤ãå¤ãä¿æããã¾ãã
ãã®ä¾ã§ã¯ãdropEffect
ã¨effectAllowed
ããããã£ã使ç¨ãã¦ãã¾ãã
<div>
<p id="source" ondragstart="dragstart_handler(event);" draggable="true">
ãã®è¦ç´ ã鏿ããããããã¾ã¼ã³ã«ãã©ãã°ãã¦æ¾ãã¨ãè¦ç´ ãç§»åãã¾ãã
</p>
</div>
<div
id="target"
ondrop="drop_handler(event);"
ondragover="dragover_handler(event);">
ããããã¾ã¼ã³
</div>
CSS
div {
margin: 0em;
padding: 2em;
}
#source {
color: blue;
border: 1px solid black;
}
#target {
border: 1px solid black;
}
JavaScript
function dragstart_handler(ev) {
console.log(
"dragStart: dropEffect = " +
ev.dataTransfer.dropEffect +
" ; effectAllowed = " +
ev.dataTransfer.effectAllowed,
);
// ãã®è¦ç´ ã® id ããã©ãã° ãã¤ãã¼ãã«è¿½å ãããããã ãã³ãã©ã¼ã
// ã©ã®è¦ç´ ãããªã¼ã«è¿½å ããããç¥ããã¨ãã§ããããã«ãã¾ãã
ev.dataTransfer.setData("text", ev.target.id);
ev.dataTransfer.effectAllowed = "move";
}
function drop_handler(ev) {
console.log(
"drop: dropEffect = " +
ev.dataTransfer.dropEffect +
" ; effectAllowed = " +
ev.dataTransfer.effectAllowed,
);
ev.preventDefault();
// ã¿ã¼ã²ããã® ID ãåå¾ããç§»åããè¦ç´ ãã¿ã¼ã²ããã® DOM ã«è¿½å ãã¾ãã
var data = ev.dataTransfer.getData("text");
ev.target.appendChild(document.getElementById(data));
}
function dragover_handler(ev) {
console.log(
"dragOver: dropEffect = " +
ev.dataTransfer.dropEffect +
" ; effectAllowed = " +
ev.dataTransfer.effectAllowed,
);
ev.preventDefault();
// dropEffect ãç§»åããããã«è¨å®ãã¾ãã
ev.dataTransfer.dropEffect = "move";
}
çµæ 仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ é¢é£æ
å ±
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4