私は HTML でテーブルを作成しており、人々がそのテーブルの一部をコピー/ペーストしているのを見てきました。試してみたところ、テーブルには画像などの列がたくさん含まれているため、結果は混乱し、多くのクリーンアップが必要でした。
選択をテーブルの最初の 2 列に制限する方法はありますか?
また
コピーされているテキストを置き換える方法はありますか (ユーザーは「リンゴ」を選択してコピーを押しますが、「バナナ」はクリップボードに残ります)。
私は HTML でテーブルを作成しており、人々がそのテーブルの一部をコピー/ペーストしているのを見てきました。試してみたところ、テーブルには画像などの列がたくさん含まれているため、結果は混乱し、多くのクリーンアップが必要でした。
選択をテーブルの最初の 2 列に制限する方法はありますか?
また
コピーされているテキストを置き換える方法はありますか (ユーザーは「リンゴ」を選択してコピーを押しますが、「バナナ」はクリップボードに残ります)。
列の選択を制限するには、Mooseman が提案したようにユーザー選択を使用します。問題は、ブラウザが現在、実際のユーザー選択ではなく、プロパティの独自のバージョンをサポートしていることです。
<style>
.notSelectable{
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
}
</style>
http://caniuse.com/user-select-noneでサポートを確認できます。
JavaScript はクリップボードをまったく制御できません。これは、Flash の一般的な用途の 1 つです。
user-select: none
後者の table<td>
要素で使用して、CSS でのテキストの強調表示をブロックできます。は新しいプロパティであるためuser-select
、一部のブラウザーではベンダー プレフィックスを付ける必要があります。
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
詳細については、 http://css-tricks.com/almanac/properties/u/user-select/を参照してください。user-select
またIE9以下ではご利用いただけませんのでご注意ください。