Born Neet
- The Emotional Programmer -
| Next Entry … j | Prev Entry … k |
| Next Page … J(Shift + j) | Prev Page … K(Shift + k) |
| Scroll Down … Space / Page Down | |
| Scroll Up … Shift + Space / Page Up | |
メールアドレスはスパム対策で画像化してしまっているので、メールフォームも置いておきます。
サイドバー(右上)に地味に置いてる奴です。
ずっと気になってたブログ内検索するとスクリプト内の文字列までハイライトのためにspanタグで囲まれちゃう問題(なんじゃそれ?)に対応しました。
具体的には、外部スクリプト化できるやつはbornneet.jsっていうファイルにまとめて、できないやつは無名関数化して安全圏であると思われるonclick属性に入れるように変更しました。
これで、上記の機能が原因のエラーは出なくなったと思います。(スクリプト自体の不具合はあるかもしれません)
興味のある人はブラウザの機能とかでソースを見てください。
長い&たいしたもんじゃない&面倒な(これが一番の理由だったり…)ので張るのは止めておきます。
[追記 2008/01/18]
運営日数表示(サイドバー下部のプロフィール内)スクリプトも修正した。(外部js化)
先日公開した(x)html2presenで使ってみたie7-js 。
以下にその感想を。
設定したかったのは下の内容。
(プレゼンを常にブラウザ表示領域内最大に固定するというもの)
#presenArea {
position: fixed;
left: 0;
top: 0;
right: 0;
bottom: 0;
}
普通、IE6以下では上のcssは全く機能しない。
まず、fixed指定はもちろん無視される。
さらに、left-right、top-bottomの同時指定にも対応していない。
IE7.jsを使えば、そんな悩みを一気に解決してくれる・・・はずだったんだけど。
何故かfixedが効かない。
いろいろ試してみたところ、外部cssで指定するとうまく処理されないっぽい。
(style属性タグ内に書くとちゃんと固定された)
結局おなじみのexpressionでやることにした。
style属性タグをjsから操作するのは面倒いし、動的に生成してもIE7.jsが処理してくれるかわからないので。
* html #presenArea {
position: absolute;
top: expression(document.documentElement.scrollTop + 'px');
}
これで、無事解決とおもいきや、またも問題発生。
「'px'は宣言されていません」
いや、文字列リテラルなんですが?
どうやら、IE7.js内の処理でなんか起きてるらしい。
ってことで、
top: expression(document.documentElement.scrollTop);
に修正して解決。
(単位指定しないとまずくない?と思ったけど、IE7.js内でpx指定に変換されてる模様)
あと、たまに「a.clientWidthはnullまたはオブジェクトではありません」ってエラーも出るけど、それは僕が原因(HTMLがおかしいとか)っぽい。
初めてのIE7.jsはこんなんでした。
僕としてはけっこう便利だと思います。
ただ、cssに精通してる人達にとってはそうでもないのかなぁ、とも。
(おそらく今まで通りcss-hackを操る方が効率的でしょう)
※ ExplorerCanvasと同時に使ったのが原因ってことは…ないよなぁ。
[訂正 2008/01/23 23:20]
style属性ではなくスタイルタグ(要素)でした。(書き間違えました;)
混乱させてしまってすいませんm(_ _)m
style属性にはもともと対応してないっぽいです。
(一応試してみたらやっぱりバグりました…)
なんかエンジニアの間では常識だと聞いたので。
別にプレゼンする機会はないけど。(あってもパワポ / Impress限定だし…)
なんだかんだ(後述)でできたのがこれ。
(まぁHTMLをスライドっぽく見せてるだけのプログラムですが)
(x)html2presen
(Firefox推奨。IEでも動きますがとてつもなく重いです。FFでもかなり重いけど;)
サンプルとして2つのプレゼンを置いてます。
(ツールの使い方をそのツール自体で説明するという暴挙)
[開発記(?)]
今回は他人のソースを見ないで作ることを目標にした。
車輪の再生産ってやつなんだろうけど、一旦自分で作ってみた方が勉強になるので。
(とはいっても完全に一からは面倒なのでjQuery使った。そろそろ自分用のbasicライブラリ作らないといけないなぁ…)
で、実際作ってみると、予想より難しくてかなり苦労した。
基本的な部分はすぐにできたんだけど…
なんとなく付けてみた落書き機能に超苦戦。
最終的にcanvas要素(+ExplorerCanvas)でやることにした。
(大量のspan要素を生成する方法もやってみたけど、重すぎて却下)
canvasを弄るのは初めてで全くわからず、結局ネット上のいろんな情報に頼ることに。
でもソースの流用とかはしなかった、頑張った!(って普通か)
以上。
一通り動くようにはできたし(まだまだバグ・機能不足はあるけど)、
amachangさんのツールでも見て勉強するかな。
[参考記事]
- Canvas - HTML5.JP
このサイトがなかったら完成しなかった。感謝! - Taken SPC : いい加減な canvas 要素の紹介
こちらのサイトにもお世話になりました。 - ブラウザ上でお絵かき: Days on the Moon
本当はこれぐらい軽快に動作させたかった!
(ライブラリ使わせてもらおうかなぁ…)
読書記録代わりに。
けっこう前の話だけど。
- 入門PHPセキュリティ
そろそろサーバサイドも使うかもなぁ、と思ったので読んでおいた。
結局まだjsだけで頑張ってるけど。
(これぐらいの薄さの本が増えてくれるとありがたい) - JavaScript 第5版
JavaScriptクイックリファレンス 第5版も合わせて読ん(?)だ。
長すぎ&難すぎで全然理解できてない…。
もう一回読まないと。 - PHPによるWebアプリケーションスーパーサンプル 第2版
途中で断念した。
そもそもこういう系の本は読み物じゃないしね。
せっかく読んでも身に付いてないのが問題だなぁ。








