2009年06月28日

Lightbox2.04をseesaaへ!

入れてみました。
過去記事を編集しなおさないでも適用されるようにカスタマイズしたかったんですが、
さすがにそこまでやるのはしんどそうだったので諦め(・ω・`)

Lightbox JS 1.0でやってる記事なら見つけたんですがね・・・。
このサイトさんはseesaaに適用する方法もScreenShot付きで解説されてて分かりやすかったです。

あとは、2.04ではないですが、Lightbox 2.0 設定方法こんなサイトさんとか。
一番下に「各種パラメーター」ってのがあって、表示での設定項目があるのが分かります。

そんな感じで、とりあえずPSUカテゴリにある画像に対してはだいたい適用しました。
別窓表示を設定してなかったのはそのままですが・・・。
他のカテゴリはもうメンドイんで放置で(ヽ'ω`) 記事数1000超えてますし・・・。
ただ、導入させといてアレですが・・・画像がでかすぎると重くなりますね・・・orz
仕方ないと言えば仕方ないですが(・ω・`)

最後に、ローディング中のgifアニを変更してますが、
Loader Generatorって言うローディングアイコンの生成ページを使用させてもらいました!
posted by ふぇび〜 at 15:57| Comment(0)| TrackBack(0)| JavaScript

2009年06月27日

Lightbox2.04!

Lightbox2.04

今このブログにこいつをなんとか適用できないかなーっと試行錯誤しております。
でかい画像を別窓に表示するより、ポップアップのが見やすいと思いましてねぇ(・ω・`)

んー・・・同じseesaaブログで使ってるのは見つけるんですが、
解説してるとこってあんまりないんですよねぇ(・ω・`)

まぁでも、出来ないことはないみたいだから適当に頑張ってみます!
posted by ふぇび〜 at 15:25| Comment(0)| TrackBack(0)| JavaScript

2009年05月29日

Operaでposition:absolute;

CSSでposition:absolute;を使った場合、OperaとIEで表示位置がズレます。
Opera側の仕様だかバグだかは知らないですが、Webサイトのデザインをする際には要注意ですね。

なんで突然こんな記事書いたかってーと・・・
Type/Weapon/Trap/PA 比較を修正しててズレまくったからなんですよ(ノ∀`)
IEでピッタリに位置合わせてもOperaで見るとなんじゃこらー!?ってなってましたorz
OperaとIEのbox表示比較
こんな感じに・・・。(左:IE 右:Opera)
盛大にズレてるのがわかると思いますが、styleは同じです。

まぁ、おとなしくposition:relative;使ってください。ってことですね・・・。

----- 追記
relative使ってもズレるものはズレるんですね(ヽ'ω`)
真面目に対応するならJavaScriptでブラウザ情報取得してCSS切り替えるしかなさそうかなー・・・。
面倒くさいなら「Operaでは表示がズレます(キリッ」って書けばいいよ・・・。
うん。そうしよう。
posted by ふぇび〜 at 02:34| Comment(0)| TrackBack(0)| JavaScript

2006年07月29日

onKeyDownとonKeyPressの違い

イベントモデルの理解

かなり専門的な内容のリンクになりますが・・・。
キーボードイベントとしては、javascriptに限らずWin系プログラミング共通だと思う考え方。
結論から言うと、
KeyDownはキーボードが押された瞬間。KeyPressは入力が文字に変換された瞬間。
イベントの順としては、KeyDown→KeyPress→KeyUpとなるようです。
リンク先は技術者なら理解しておいて損はない内容ですね。
ってか、知らないままじゃ技術者にはなれない気がする・・・。
ヘタレプログラマな私ですらかなりの部分理解していた内容ですからね!
posted by ふぇび〜 at 07:29| Comment(0)| TrackBack(0)| JavaScript

2006年07月13日

alertでfunction出力

ちょっとした小技・・・かな?
javascriptもコードの量が増えてくるとどこにどの関数を定義したのか忘れる場合もあります。
・・・少なくとも私はよくあります。
そこでどんな関数だったか思い出せないのにいちいち探すのはダルい!
なんて時もあります。・・・少なくとも私は・・(以下略)。

そこで関数のコードだけをalertメソッドを使って出力する方法をご紹介。
----------
function hoge() {
}
function funcout() {
alert(hoge);
}
----------
これだけ。
alertの引数に関数名を指定するだけで関数がそのままメッセージボックスで出力されます。
↑の例だと出力は・・・
-----
function hoge() {
}
-----
ってなります。

まぁ、大したもんじゃないけど・・・知ってても損はないかと。
posted by ふぇび〜 at 00:30| Comment(0)| TrackBack(0)| JavaScript

2006年06月14日

JavaScriptでクリップボード

今またちょっとJavaScriptで何やらゴソゴソと作ってたりします。
まぁ、仕事がもらえないので例の如く暇つぶしですがorz

で、クリップボードとのデータのやり取りなんかはどうなのかと調べてたんです。
そしたらこんなとこ見つけました。つ[あなたのクリップボードが盗まれる]
なんか怖いタイトル付いてますけど、実際怖いです(つд`)
そもそもクリップボードってのは何ぞや?って思う人もいるかと思います。
こいつは、テキストやファイルなんかを右クリックからとかCtrl+Cとかなんかでコピーしますよね?
まぁ、切り取りでも同じです。
そうやってコピーや切り取りしたデータを憶えておく場所がクリップボードなわけです。
実際には何がまずいの?ってことですが、コピーなんてのはよく使う機能ですよね。
特に憶えにくいパスワード関係には重宝するんじゃないでしょうか・・・。
わかりますよね?使用者が気付かない間に情報が第三者に漏れている可能性があるんです。

JavaScriptではclipboardDataっていうオブジェクトが用意されていまして、
str=clipboardData.getData("Text")でクリップボードの内容を"str"に取得。
clipboardData.setData("Text","str")でクリップボードに"str"を格納。
clipboardData.clearData()でクリップボードの内容を消去。
なんてことが出来るようです。(→詳細はこっち
パスワード以外にも、外に漏れたらまずい情報なんていくらでもあるわけで・・・。
じゃぁ、どうしたらいい?ってことになりますねよね?・・・なってくださいね?
IEを使うのをやめるってのもありますけど・・・IEでも一応漏れないように設定出来たりします。
(デフォルトの設定でダダ漏れの状態になってるのは流石ですorz)
方法は・・・言葉で説明するのが面倒なんでこいつを見てください。
つ[インターネットプロパティからのブロック方法]
posted by ふぇび〜 at 20:17| Comment(0)| TrackBack(0)| JavaScript

2006年04月04日

キー入力の検知

javascriptでもキー入力を検知してイベントを拾うことが出来ます。
・・・偉そうに書き出してみたけど、今日知りました・・・。
イベントハンドラはonKeyDown(), onKeyUp(), onKeyPress()の3つらしい。
DownとPressの違いがいまいち分からなかったですが・・・orz

で、キーコードはどう拾うかって言うと・・・
event.keyCode これで拾えるっぽいです。KeyCodeでも、keycodeでもダメですよ。
大文字・小文字に注意してくださいねー。
posted by ふぇび〜 at 20:15| Comment(0)| TrackBack(0)| JavaScript

2006年03月31日

変数もオブジェクト

こないだfor〜in文の検証のところで疑問にあがった変数についてですが、
どうやらjavascriptでは変数もオブジェクトとして扱うらしいです・・・。
 →参考サイト:Hawk's W3 Laboratory -JavaScript 深層

これでちょっとは納得が行きましたね。
for〜in文を変数に使っても確かにオブジェクトのプロパティを参照してたわけです。
posted by ふぇび〜 at 22:52| Comment(0)| TrackBack(0)| JavaScript

2006年03月28日

for〜in文のカウンタって何?

javascriptのループ構文には通常のfor文の他に、機能を拡張したfor〜in文ってのがあります。
構文は for(カウンタ in オブジェクト) ですね。
指定されたオブジェクトの全てのプロパティに対してループ処理をします。

って、書いてあるのをよく見ますけど・・・
実はユーザー定義の配列にも使えたりするんですね・・・。
配列がそもそもオブジェクトなのかと思いましたが、そこまでは調べられなかったですorz
まぁ、使えるものは使っておきましょう。

 var Arr = new Array(10);
 var i;

 for(i=0;i<10;i++) Arr[i]=i;
 for(i in Arr) alert(Arr[i]);

こんな風に書くと0〜9まで順番にメッセージボックスが表示されます。
i には配列の添え字が返ってきてますけど、これがプロパティに当たるんですかね。

それと、これをフォームアイテムでやろうとすると、
一番最初にlengthってプロパティを参照するからちょいズレるのにご注意。
例えばで言うと、input typeでhiddenを使用して値の取得をする時とか、
frmHって名前のhiddenが10個あるとすると、
for(i in frmH)ってやると、ループは10回じゃなくてlength+添え字分の11回回ります。
・・・上手く説明出来てない気がするけど・・・ちょっと動かしてみれば分かるよ!
posted by ふぇび〜 at 20:57| Comment(0)| TrackBack(0)| JavaScript

2006年03月22日

オブジェクト配列

(´・ω・)つ

今まで知らなかった・・・。
フォームの要素に同じ名前付けると勝手に配列化してくれるんですね・・・。
上のだと、hiddenオブジェクトに対して同じnameでvalueをそれぞれ変えて設定してます。
ボタンを押すとその値をループで取得して配列に移してから、
これまた同様に、同じnameを指定したspanタグに出力しているだけです。

これって地味に便利だと思いますけど・・・なんで今まで気付かなかったんだ・・・orz
posted by ふぇび〜 at 20:54| Comment(0)| TrackBack(0)| JavaScript

2006年03月20日

コンボからの動的コンボ作成

また仕事の合間の暇つぶし。 →
なんか、どっかでコンボから動的にコンボを作成するのは無理とかあったので試しに・・・。
で、結果はアッサリ出来ちゃいました・・・。

上のテストページでは、
左のコンボから10単位で選ぶと1単位の右のコンボを動的に作成してます。
で、どちらかのコンボが変化すると下のバーの幅が変わるように。
興味のある人はソースを見てみて下さい。
グチャグチャかもしれないですけど・・・。あとコメントないですorz

それから、TABLEタグ内の幅を1%と99%に設定した時だけ表示がズレてます。
これはTABLE幅の設定値よりも文字列領域を優先的に確保してるためです。
まぁ、直そうと思えば直せるけど・・・目的が違うので放置で。
posted by ふぇび〜 at 01:07| Comment(0)| TrackBack(0)| JavaScript

2006年03月15日

昨日の続き

月曜に面接に行った次の出向予定先・・・蹴られましたorz
なのでまだしばらくjavascriptの勉強になりそうです。・゚・(ノд`)・゚・。
というわけで、昨日の謎を調べてみましたよ・・・。
でも、インターネットには接続できない環境しかないので自分で検証です。

調べる項目は、多重配列の宣言時にエラーが出るってとこですね。
ちなみに昨日忘れましたが、「";"がありません。」ってエラーが出ます。
ちゃんと「;」付けててもありませんって言われるので余計混乱しますね・・・。
で、結局よく分からないのですが・・・
自分なりの納得いく解釈は持てたのでそれで済ませました。

まず、エラーが起こる場合です。
 var 変数名 = new Array();
 var 変数名[0] = new Array();
これですね。解決へのポイントは、エラーメッセージを無視します!
どう考えたって「;」付いてるんだから関係ないです。(きっと)
そうすると考えられるのは重複宣言ってくらいですかね・・・。
1行目のvarで宣言した変数に対して、2行目でもvarを使ってますからね。
一度宣言された変数に対しては(きっと)その要素に対してももう宣言出来ないんですよ・・・。
とか、そんな解釈に至ったわけです・・・。

この際、合ってる合ってないは関係ないです!
私はこうやって理解しましたってことで・・・orz
posted by ふぇび〜 at 19:19| Comment(0)| TrackBack(0)| JavaScript

2006年03月14日

JavaScriptの多重配列宣言

どっかに書いておかないと忘れますので・・・。

今は本社待機期間なので、毎日仕事もしないでjavascriptの勉強してます。
そこで気になったんですけど・・・多重配列宣言がよくわからない・・・orz
まぁ、無駄に時間があるんで調べてみたんですけど、
どうもパッとした説明があるところがないんですよねぇ〜・・・。
なので自分で試行錯誤してみました。せっかくなので忘れないように・・・

まず通常の変数宣言は
 var 変数名;
これでOKですよね。
javascriptっていい加減というか・・・変数宣言なくてもOKだったりします。
でも明示的に宣言しないとなんとなく気持ち悪いので宣言しておきましょう。

次に配列の宣言。
同様にvarを使って
 var 変数名 = new Array();
これでOK。
Arrayってのは訳すと配列って意味なんでそのままですね。
()の中に数字を入れると、入れた数字の個数だけ配列の要素が定義されます。
ただ、配列の添え字は0から始まるので()に5って入れると0〜4の5個が定義されることになるのでちょっと注意が必要だったりします。

で、最後に多重配列。
多重配列は配列の要素に対して配列を定義するものですから・・・
 var 変数名 = new Array();   ←ここで配列定義をして
 var 変数名[0] = new Array(); ←ここで配列の要素に対して配列定義
これで行きそうなんですけど・・・これでOKならこんなの書きません。
これ、実行するとエラーになります。よく分からないでしょ・・・?

結論から言うと、多重配列の宣言は・・・
 var 変数名 = new Array();
 変数名[0] = new Array();
これでOKみたいです。
知ってる人には当然なんでしょうけどね・・・なんか不思議・・・?
なんで変数宣言するのにvarを付けるとエラーになるのかが分からない・・・。
でもこうすればエラーもなく動いてくれます。動けばいいのか・・・。
posted by ふぇび〜 at 19:19| Comment(0)| TrackBack(0)| JavaScript

2005年11月07日

今更手直し

きっと需要はないと思うECOのタタラベスキルシミュ。
10/14のパッチでスキル仕様が変わっていたので追加しておきました。

きっと需要はないと思う・・・
posted by ふぇび〜 at 10:00| Comment(0)| TrackBack(0)| JavaScript

2005年10月11日

ちょいECOシミュ更新

アドレスは昨日と同じだけど、ここですよ。

最大スキルレベルを考慮してみました。
それだけ・・・あんまりコーディングに時間かけられないのがきついですねorz

残りの実装予定の要素としては、「スキル取得レベル」ですかね。
それが終わったら全職分作ってみようかと思っております。

しかし、こんなシミュレーターに需要なんてあるんですかね?
私はロクに足し算も出来ないほど頭が悪いので欲しかったんですけどね〜。

ごめん、目からなんか汗出てきました・・・。・゚・(ノд`)・゚・。
posted by ふぇび〜 at 23:06| Comment(0)| TrackBack(0)| JavaScript

2005年10月10日

ECOのスキルシミュ・・・

昨日の勢いで今プレイしてたりするECOのスキルシミュに着手してみました。

って、言っても全然完成してないですけどねorz
一応 こんな感じ のとこまでは出来ましたよ。

あ、キャラがタタラベなのは私の持ちキャラ用なだけです。
マイナー職でごめんね(つд`)
posted by ふぇび〜 at 20:37| Comment(0)| TrackBack(0)| JavaScript

こんなん作ってみた

なんとなく久しぶりに JavaScript 打ってみました

こんな感じ

まぁ、実用的とはまったく言えない物ですが なんか面白いですよね
JavaScriptはコンパイルもいらないし、それでいて意外といろいろ出来たりするんで勉強しようと思ったけど・・・結局途中で投げ出してたような記憶が今蘇りましたorz
posted by ふぇび〜 at 03:38| Comment(0)| TrackBack(0)| JavaScript