- + JavaScript の質問用スレッド vol.121 + [無断転載禁止]©2ch.net
427 :デフォルトの名無しさん[]:2016/08/08(月) 03:57:05.38 ID:UKjMuFYo - Chrome 開発環境のコマンドプロンプトからなら何度呼び出しても動くのに、
タイマーで繰り返し呼び出すと動きません。 alert(text);では正しく表示されているので document.execCommand("copy"); に問題がありそうです。 回避方法を教えてください。 function clipCopy(text){ var input = document.createElement("textarea"); input.value = text; document.body.appendChild(input); input.select(); document.execCommand("copy"); input.remove(); alert(text); }
|
- + JavaScript の質問用スレッド vol.121 + [無断転載禁止]©2ch.net
428 :デフォルトの名無しさん[]:2016/08/08(月) 05:24:46.93 ID:UKjMuFYo - document.execCommand("cut");
エレメントを消さずに繰り返し実行すると、 1回目だけは消えるが、2回目以降はカットされずに残る。 しかし、コマンドラインで上記を実行すると成功する。 1回目は普通に呼び出されるから、 もしかしてタイマーで呼び出された場合に動作しないと言う事か。
|
- + JavaScript の質問用スレッド vol.121 + [無断転載禁止]©2ch.net
430 :デフォルトの名無しさん[]:2016/08/08(月) 06:48:57.52 ID:UKjMuFYo - >>429
100msでダメだからタイマーは無理って事ですね。 .onblur 経由で呼び出しても同じだった。 と言うか、blur を trigger("blur") で発生させても動かないが、 実マウスでトリガーを発生させると cut 動作した。 つまり、マウスイベントを起点として動けばいいんだ(ただし、タイマーなしで)・・・ ちょっと無理。別の方法を考えよう。
|
- + JavaScript の質問用スレッド vol.121 + [無断転載禁止]©2ch.net
432 :デフォルトの名無しさん[]:2016/08/08(月) 12:18:53.86 ID:UKjMuFYo - ゲームマクロのために継続して動く必要があるんですが
click や tap は監視されてしまってイベント発行できないんです。 そこで、クリップボード経由でクリックすべき座標を送って 他アプリケーションでクリックしようと思っていたんです。 もちろん、JavaScript を使わないマクロは存在しますが 画像を読み取る方法は重くて ブラウザの画像処理でにじみが出て反応が遅くなったりと問題があるので。 また、Chrome はクライアント座標が分からないのでページの原点座標が分からない問題があります。 それについては下記に投稿したスクリプトで取得できるので execCommand が役立ってはいます。 http://potato.2ch.net/test/read.cgi/software/1469866649/41 以前、Chrome のファイルを直接見る方法を目にしたことがあったので 現在それを検討しています。 規制内容についてはこの辺に情報があります。 http://tamae.2ch.net/test/read.cgi/gameurawaza/1469536392
|