生成したタグでonClickが出来なくてはまった


たとえば

document.write('<a href="#" onClick="JavaScript:hogehoge();">ほげほげ</a>');

function hogehoge() {
    alert('ほげらっちょ');
}

ってコードをGreasemonkeyで書くとする。

んで、ほげほげをクリックすると何も起こらない。
何かaddEventListenerとか使わないといけないっぽい。


知らなくて1時間くらいはまった。

初めて公開できるレベル?のモジュール作った


先日、会社のMTGで循環的複雑度の話があった。


Perl::Metrics::Simple


さっそく、家で試しておもしろかったからテストに組み込もうとしてみる。


んで、CPANでTest::Perl::Metrics的なもんが無いかと調べるも見つからず。
コレは作るべきじゃね?って事で作った。


各種サイトを見つつ、CPANの形式に合うように作成。
PODとか始めて英語で書いた。拙い英語で。

んで、出来たのがコレ。
Test::Perl::Metrics::Simple


月曜日に会社の人にレビューしてもらったらCPANうpに挑戦してみっかな。

CPANが死んだと同時に既存のアプリも全部死んだ件について


CPANでモジュールインスコしようとするとNet::FTPがどうのこうのって怒られる。
なんかモジュールを色々インスコしようとしてあばばばばって事になってたらしい。

最初の段階ではCPANの設定がぶっ壊れたか?と思ってConfig.pmを消して再設定してみる事に。

プロキシの設定直後でNet::FTPが怒られてCPANの初期設定ができなくなった\(^o^)/


仕方なくCPANからNet::FTPをDLしてきて再インスコ・・・しようとしたらmake testが通らねぇ。

どうもErrnoがそもそもぶっ壊れた原因らしい。


で、ErrnoもCPANからDLしてきて再インスコ
んで、Net::FTPを再インスコ


CPANの再設定も無事通過。
で、既存のアプリの動作確認。



Internal Server Error\(^o^)/



またScalar::Utilだった。
死ねと思いつつforce install。



無事、俺の開発環境は修復されたようだ。

use lib qq(変数)は本当に無理なのか

無理じゃなかった。

変数を使った時の問題はコンパイル時には変数の中身が無い事。


useはコンパイル時に実行されるからね。
てなわけで、解決策が↓

use strict;
use warnings;

my($LIB_PATH);
BIGEN {
    $LIB_PATH = '../lib';
}

use lib qq($LIB_PATH);


いや、BIGEN使えばできるよって話だから、別にソースはどう書こうがいいじゃん。
と、グローバル変数を使わざるを得なかった言い訳をしてみる。

携帯コンテンツのフォームで入力制限


徐に携帯について書いてみる。

PCの場合はstyle="ime-mode:disabled"を書けば半角制限がかかる。
携帯では無理。スタイルシートが無いから。

携帯の場合は<input>タグに拡張オプションがあるので、それを利用。


○全角(デフォルト)
istyle = 1
mode = hiragana

○半角カナ
istyle = 2
mode = hankakukana

○英字
istyle = 3
mode = alphabet

○数字
istyle = 4
mode = numeric



istyleはdocomoau
modeはソフトバンク系。

全機種対応するなら、両方書けばおk。

今更、ファイルアップが出来なくてはまった


タグに指定しないといけないオプションがあったらしい。
enctypeの部分を書いてなかったからできなかった。
つか、知らなかった・・・。

<form name="sample" action="./" method="post" enctype="multipart/form-data">
  <input type="file" name="upload">
  <input type="submit" value="送信" name="submit">
</form>


ちょっと吊って来る。

DBIxのエラーでDBIxを使ってるアプリが死んだ


今日、ふと以前に作ったアプリを見てみると

Internal Server Error


急いで原因を調べた結果、どうもDBIxが悪さしてるらしい。
Fedorayumで何かをupdateした時に、ぶっ壊れたかも。


とりあえず、ネットで検索。

Scalar::Util

コイツが悪さをしてるらしい。

forceを使用して強制インスコ

force install Scalar::Util


直った。