2014年5月22日木曜日

cssで範囲選択できないようにする


for firefox chrome khtml (css)
-moz-user-select: none;
-webkit-user-select: none;
-khtml-user-select: none;

for IE (attr) ※子要素には引き継がれない
unselectable="on"



phpexcelでの高さ自動調整



// 10行目の行を引数なしで高さ自動調整
$objSheet->getRowDimension(10)->setRowHeight();

2014年5月21日水曜日

コンソールからjqueryを読み込ませる


chromeのデベロッパーツールから、


var _cjq={};_cjq['s']=document.createElement("script");_cjq['s'].src='//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js';_cjq['b']=document.getElementsByTagName('body')[0];_cjq['b'].appendChild(_cjq['s']);


を実行すると、
jqueryがないサイトでもコマンドラインから使えるようになる。


参考サイト
http://blog.engine04.com/2013/04/02/force-anywhere-to-load-the-jquery/



2014年5月19日月曜日

PHPExcelでの名前定義に値をセットする際の注意点


エクセルテンプレートを使用する際、名前定義が複数カラムを指定されていると
値セット時にエラーになる。


名前定義「entry」が結合セル「$A$1:$A:$3」であっても、
名前定義自体は、$A$1:$A:$3ではなく、$A$1にしないと値セットされない。


$objSheet->setCellValue('entry', .100'名' );



2014年5月13日火曜日

1行でプロセスを表示し続ける書き方

たとえば、mysqlのプロセスを確認する場合

while [ true ]; do clear; ps ax| grep "mysql"; sleep 1; done

2014年5月9日金曜日

jQuery カレンダーの日本語化+セットするデータに曜日を出す


読み込むjQuery

jquery1.8
jquery.ui.datepicker-ja.js


対象の要素

<input type="text" id="start_date" class="datepicker" >


datepickerクラスを持つすべてのinput要素にカレンダーをつける

$(document).ready(function(){
$.datepicker.setDefaults( $.datepicker.regional[ "ja" ] );
$('input.datepicker').datepicker({ dateFormat: 'yy-mm-dd(D)' });
});


Hyper-Vの仮想OSバックアップ手法検討


1)Hyper-Vの仮想マシンをエクスポート/インポートする
http://www.atmarkit.co.jp/fwin2k/win2ktips/1103hvexport/hvexport.html

・前提条件
■ Hyper-Vマネージャーを画面から起動する。自動化する手法ではない。
■ 実行中の仮想マシンはエクスポートできないので、事前にシャットダウン/停止/保存する。



2)Hyper-Vの仮想マシンを自動エクスポート
http://papa.katze3.net/?eid=938117

WindowsServer2008などに搭載されている、hyper-vのエクスポート機能を有効利用して、
タダで仮想マシンを自動バックアップができ効率的です。

Hyper-V の自動バックアップ(エクスポート) スクリプト
http://d.hatena.ne.jp/tekk/20100806/1281087011

Hyper-V の仮想マシンをエクスポートするスクリプト
http://cs.albis.jp/blogs/ms-18e/archive/2009/10/28/147295.aspx


どちらも、似たような動作なのでお好きな方を使ってみては?
ただし、仮想マシンをExport中はその仮想マシンは一時停止中です。
ですので、vhdファイルが大きいものはマシンスペックにもよりますが停止時間が長くなります。
長時間止められない場合は、おすすめできません。


可能であれば、タスク登録して自動でバックアップしたい。
ただしそのためにはGuestOSを停止させておく必要があるため、この問題についても合わせて検討しなければならない。


2014年5月8日木曜日

WEB画面全体でのファンクションキーの制御


(function($) {

//全体のキーイベント制御
$(document).keydown ( function(event) {

switch (event.keyCode){
case 112:
// F1
if ( typeof(Xapl.fn.F1event)  === 'function'){
Xapl.fn.F1event();
}
return false;
case 113:
// F2
if ( typeof(Xapl.fn.F2event)  === 'function'){
Xapl.fn.F2event();
}
return false;
case 114:
// F3
if ( typeof(Xapl.fn.F3event)  === 'function'){
Xapl.fn.F3event();
}
return false;
case 115:
// F4
if ( typeof(Xapl.fn.F4event)  === 'function'){
Xapl.fn.F4event();
}
return false;
case 8:
//backspaceを無効にする
var tag = event.target.nodeName.toLowerCase();
var $target = $(event.target);
if ((tag !== 'input' && tag !== 'textarea') || $target.attr('readonly') || $target.is(':disabled')) {
return false;
}
}
return true;

});
})(jQuery);

PHPExcelでエクセルの設定諸々


// グリッドラインを消す
$objSheet->setPrintGridlines(false);
$objSheet->setShowGridlines(false);

// シートロック パスワード
$objSheet->getProtection()->setPassword('1234');
// シートロック 並び替え
$objSheet->getProtection()->setSort(true);
// シートロック 行追加
$objSheet->getProtection()->setInsertRows(true);
// シートロック セル書式
$objSheet->getProtection()->setFormatCells(true);
// シートロック 行削除
$objSheet->getProtection()->setDeleteRows(true);