マウスでドラッグ時にアラート表示サンプル

以下は青空文庫の「遠野物語」からの引用です。

上郷村の民家の娘、栗くりを拾いに山に入りたるまま帰り来きたらず。家の者は死したるならんと思い、女のしたる枕まくらを形代かたしろとして葬式を執行とりおこない、さて二三年を過ぎたり。しかるにその村の者猟をして五葉山ごようざんの腰のあたりに入りしに、大なる岩の蔽おおいかかりて岩窟のようになれるところにて、図はからずこの女に逢いたり。互いに打ち驚き、いかにしてかかる山にはおるかと問えば、女の曰いわく、山に入りて恐ろしき人にさらわれ、こんなところに来たるなり。遁にげて帰らんと思えど些いささかの隙すきもなしとのことなり。その人はいかなる人かと問うに、自分には並なみの人間と見ゆれど、ただ丈たけきわめて高く眼の色少し凄すごしと思わる。子供も幾人か生みたれど、我に似ざれば我子にはあらずといいて食くらうにや殺すにや、みないずれへか持ち去りてしまうなりという。まことに我々と同じ人間かと押し返して問えば、衣類なども世の常なれど、ただ眼の色少しちがえり。一市間ひといちあいに一度か二度、同じようなる人四五人集まりきて、何事か話をなし、やがて何方どちらへか出て行くなり。食物など外より持ち来たるを見れば町へも出ることならん。かく言ううちにも今にそこへ帰って来るかも知れずという故、猟師も怖ろしくなりて帰りたりといえり。二十年ばかりも以前のことかと思わる。

※引用元 青空文庫「遠野物語

補足

上記の引用部分のテキストをドラッグで選択するとアラートが表示されます。
addEventListenerとgetSelectionしか使っていないため、IE8以下では動作しません。

以下はJavascript部分のコードです。


window.onload = function(){
var weeks = new Array('日','月','火','水','木','金','土');
var now = new Date();
var year = now.getYear(); // 年
var month = now.getMonth() + 1; // 月
var day = now.getDate(); // 日
var week = weeks[ now.getDay() ]; // 曜日
var hour = now.getHours(); // 時
var min = now.getMinutes(); // 分
var sec = now.getSeconds(); // 秒
if(year < 2000) { year += 1900; }
// 数値が1桁の場合、頭に0を付けて2桁で表示する指定
if(month < 10) { month = "0" + month; }
if(day < 10) { day = "0" + day; }
if(hour < 10) { hour = "0" + hour; }
if(min < 10) { min = "0" + min; }
if(sec < 10) { sec = "0" + sec; }

var currSerectionArea = document.getElementById("copycheck");
currSerectionArea.addEventListener('mouseup',function(){
var currSelection = window.getSelection();
var currSelectionString = String(document.getSelection()).length;
var currNavigator = navigator.appName;
var currAppVer = navigator.appVersion;
if(currSelectionString > 300){
alert( '============\n■あなたの閲覧環境\n[' + currNavigator + currAppVer +']\n■アクセス日時\n' + year + '年' + month + '月' + day + '日(' + week + ')[' + hour + '時' + min + '分' + sec + '秒]\n============\n\nあなたは下記のように300文字以上を選択しました。\nもしもこの文章を無断転載した場合「毎朝近所の地蔵にお供え物をする」という約束に同意したとみなします。\n\n============\n' +currSelection + '\n============' );
}
},false);
}

範囲選択の文字数を300文字としています。また、引用タグのblockquoteに「copycheck」というIDをつけ、冒頭の「document.getElementById("copychesk")」で指定することで選択範囲を限定しています。