画面上でのCtrl+D&D操作(Windows)をMacでも対応させる

kisyaman 15views 更新:2016年10月26日

ドラッグアンドドロップ(D&D)は、WindowsではCtrlを押しながらだとコピーになりますが、同様の動作をWeb画面でもJavaScriptで指定できます。作成した時点ではMacに対応していなかったようなので(厳密には他の手段でできるらしいのですが)こちらを参考に少し条件を加えました。

//変更前
if (e.ctrlKey){...}
//変更後
if ((e.ctrlKey && !e.metaKey) || (!e.ctrlKey && e.metaKey)){...}

上の参照したリンク先でも述べられているのですが、e.ctrlKey は Windows ctrlキーとMac controlキーに対応している一方で、e.metaKey は Mac commandキーに対応しているようです。if (e.ctrlKey || e.metaKey)としてしまうと、Macでctrlでもcommandでも動いてしまうので、条件を組み合わせているようです。

これに e.keyCode ==..というように条件を加えることもできるようです。

http://hacknote.jp/archives/7321/ http://shanabrian.com/web/javascript/keycode.php

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません