No.3916
(No.3915の続き)
カスタム絵文字を出力しているimg要素のstyle属性値に touch-action:manipulation; を加える方法以外に、例えば本文表示領域である .onelogbody に対して touch-action:manipulation; を加えても、やはり(iOS・iPadOSでは)絵文字のダブルクリックイベント自体が無効になって(コードをクリップボードにコピーする処理自体が実行されなくなって)しまいました。どうも、iOS・iPadOS用ブラウザがそういう動作になる仕様っぽいですね。(Androidでは問題ありませんでした。)
で、iPadで表示させた場合には、カスタム絵文字をダブルタップしてもズームしなかったので、たぶん、(ダブルタップでズームするのは)スキンのデザインと画面サイズとの兼ね合いの問題なのかもしれません。
何か他に良い方法はありますかね……?
とりあえず、touch-action:manipulation; を加えると(iOS・iPadOSでは)コピー自体もできなくなるので、これを加えるわけにはいかなさそうです。スキン側でズーム自体を禁止すればズームはしないでしょうけども、それをCGI側で出力するわけにはいかないので。
トリガーをダブルクリックではなくシングルクリックにする手もあるんですが、シングルクリックだと誤って絵文字を押してしまっただけで、クリップボードの中身を書き換えてしまうことになるので、あまり望ましくないと思うんですよね……。
カスタム絵文字を出力しているimg要素のstyle属性値に touch-action:manipulation; を加える方法以外に、例えば本文表示領域である .onelogbody に対して touch-action:manipulation; を加えても、やはり(iOS・iPadOSでは)絵文字のダブルクリックイベント自体が無効になって(コードをクリップボードにコピーする処理自体が実行されなくなって)しまいました。どうも、iOS・iPadOS用ブラウザがそういう動作になる仕様っぽいですね。(Androidでは問題ありませんでした。)
で、iPadで表示させた場合には、カスタム絵文字をダブルタップしてもズームしなかったので、たぶん、(ダブルタップでズームするのは)スキンのデザインと画面サイズとの兼ね合いの問題なのかもしれません。
何か他に良い方法はありますかね……?
とりあえず、touch-action:manipulation; を加えると(iOS・iPadOSでは)コピー自体もできなくなるので、これを加えるわけにはいかなさそうです。スキン側でズーム自体を禁止すればズームはしないでしょうけども、それをCGI側で出力するわけにはいかないので。
トリガーをダブルクリックではなくシングルクリックにする手もあるんですが、シングルクリックだと誤って絵文字を押してしまっただけで、クリップボードの中身を書き換えてしまうことになるので、あまり望ましくないと思うんですよね……。