SQLの窓

2010年02月11日


JavaScript : 最後にクリックしたテキストフィールドを保存する

onClick では、左クリックのみ対象ですが、右クリックが必要な場合は、
onMousedown を使うといいと思います。変数や関数は window オブジェクト
に lbox20100211 というプロパティを作成して登録しています。保存される
オブジェクトは、lbox20100211.cur にセットされます。
// window オブジェクトにグローバルな名前空間を作成
// ※ lbox20100211
window.lbox20100211 = {};

// クリック時のイベント
// lbox20100211.cur に最後にクリックされたフィールドを保存する
lbox20100211.clickEvent = function(e) {

	var userAgent = window.navigator.userAgent.toLowerCase();

	// クリックされたフィールドを保存
	if (userAgent.indexOf("msie") > -1) {
		window.lbox20100211.cur = window.event.srcElement;
	}
	else {
		window.lbox20100211.cur = e.currentTarget;
	}

}

// ページロード時のイベント
lbox20100211.registClickEvent = function() {

	var userAgent = window.navigator.userAgent.toLowerCase();

	var obj = document.getElementsByTagName("INPUT");
	var len = obj.length;
	var i,str;

	// INPUT 要素を全て取得
	for( i = 0; i < len; i++ ) {

		// type が text のみ取得
		str = obj[i].getAttribute( "type" )
		if ( str == null ) {
			str = "TEXT";
		}
		if ( str.toUpperCase() == "TEXT" ) {
			if (userAgent.indexOf("msie") > -1) {
				obj[i].attachEvent('onclick', lbox20100211.clickEvent);
			}
			else {
				obj[i].addEventListener('click', lbox20100211.clickEvent, false);
			}
		}
	}

}

// ページロードが終了した時に実行する処理を登録
if (window.attachEvent){
	window.attachEvent('onload', lbox20100211.registClickEvent);
}
else {
	window.addEventListener('load', lbox20100211.registClickEvent, false);
}



タグ:javascript
posted by lightbox at 2010-02-11 01:18 | JavaScript DOM | このブログの読者になる | 更新情報をチェックする
バッチ処理

Microsoft Office
container 終わり

フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

Android SDK ポケットリファレンス
改訂版 Webデザイナーのための jQuery入門
今すぐ使えるかんたん ホームページ HTML&CSS入門
CSS ドロップシャドウの参考デモ
Google Hosted Libraries
cdnjs
BUTTONS (CSS でボタン)
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり