実現したいこと
メインページで別ページをダイアログ表示させており、そのダイアログの表示と同時に自動的にクリップボードにデータを格納させようと考えています。ただし、FireFoxでのみ動作しません。
javascript
1// sub.html 2<script> 3 $(function(){ 4 // 前処理 5 document.execCommand("copy"); 6 ); 7</script>
発生している問題・エラーメッセージ
ChromeやIEでは動作しますが、Firefoxではコンソール上に以下のメッセージが表示され動作しません。
document.execCommand(‘cut’/‘copy’) はユーザー生成の短期的なイベントハンドラーの内部からの呼び出しでないため拒否されました。
教えていただきたこと
- FireFoxで上記を回避する方法はありますか?
- 上記のエラーメッセージを見て、以下の処理を書きましたが結果は同じでした。そこで疑問が生じたのですが、jQueryの
trigger("click")
という関数はユーザのクリックイベントを起こす関数だと思っていましたが、Firefoxに見破られてるということは実際には違うのですか?
javascript
1// sub.html 2// sub.htmlにボタンを配置した上で、 3<script> 4 $(function(){ 5 $(".sample").on("click", function(){ 6 // 前処理 7 document.execCommand("copy"); 8 }); 9 $(".sample").trigger("click"); 10 ); 11</script> 12
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/29 01:17