投稿

1月, 2012の投稿を表示しています

jQueryのwidth()でtdの幅指定をしようとしてはまった。

なんというか、関連するテーマが多すぎて分類できない話なんですが、事の発端は別々の表組みのtdの横幅をそろえたくて、必ず広くなる方が分かっているため、width()で値を取得して、もう一つに設定という方法を思いついた。
が、IE9でうまくいかない。

現象はこんな感じ。

・設定を取得する表(以降「取得元」)は普通。
・設定を適用する表組み(以降「設定先」)はcolspanを使っている
・tableのcellpaddingで「5」を設定している
・DOCTYPEはTransitional

この場合、Operaでは取得元のtdのwidthをとってきて、設定先のtdに入れても幅がきっちりそろったのだが、IEではやや設定先がやや狭くなる。
比較してみると、一律10ピクセル小さいことが分かった。
どうやらcellpadding分(左右分だから5×2)だけ小さくなっているようだったので、試しにcellpaddingを0にしてみたらきっちり合った。

IEのTransitionalの場合、jQueryのwidth()は、「取得する値にはpaddingを含まない値」をとってくるが、width(数値)で値を設定する場合は、「設定した値にはpaddingを含んでいる」ということだろうか。
この現象はcolspanを使っているときに発生するらしい。

試しにCOCTYPEをStrictにしてみたところ、Operaでもうまくいかなくなってしまったりして、どうも表組みのtdの幅というのはcolspanを使っているセルがある場合にいろいろ怪しいみたいだ。
colspanを設定しているセルに対してもきちっと適正なwidthを設定すればいいのだろうけど、そりゃめんどくさかったので却下。

結局tdの中にdivを入れて、div通しで幅を合わせる方法に変更。
コードが長くなるが、とりあえずcellpaddingやcolspanに影響されずに二つの表組みの間でセルの横幅を合わせることができた。

これはjQueryというより、HTMLとCSSについての話になるのかな。
結果的にはかなり強引な解決方法になってしまった。。。

Parallels DesktopでMacの書類とWindowsのマイドキュメントが同じ場所をみてる?

Parallelsを入れたらやりたかったことの一つは、WindowsにもiTunesを入れて、取り込み専用に使うことだったんですよね。

WindowsのiTunesでCDを取り込んで、その日に取り込んだ分をまとめてUSBに入れ、Mac側に読み込ませると同時に会社のPCに取り込むために持って行くという使い方をしたかったわけ。

なんせCDがいっぱいあるもので一度に取り込むのは無理。
少しずつ取り込んで、都度家と会社とそれぞれに同期したいのですが、すでに音楽が入っている状態のiTunesで新しいCDを取り込んだ場合、その時に取り込んだ分だけを移動用のUSBメモリにコピーするのがめんどくさいんです。
取り込み専用のiTunesを持っておけば、一区切りしたらざっくりコピーして、ライブラリをからにしておけば楽。

ところが一つ問題が。
最初理由が分からなかったのですが、Parallelsの設定のため、勝手にMacとWindowsのiTunesライブラリが同じところを見るようになってしまっていたのです。

そのほかデスクトップやダウンロードフォルダも、初期状態では共有されるようです。
設定で切り離せるようなので、今度やってみようかと。

http://download.parallels.com/desktop/v5/docs/jp/Parallels_Desktop_Users_Guide/29830.htm

Parallels Desktop(Windows7)で音が出なくなった。

OSX(Lion)でParalles7を使い、Windows7(64bits)を動かしていますが、あるとき音が出なくなりました。(「サウンド1に接続できません」というメッセージが出ます)
ついでにコヒーレンスモードも選択不能に。さらにMacの中身をWindowsからのぞく用のネットワークドライブ「psf」にも接続できず。

…なんか横文字ばかりだな。。。


どうやらParallelsのアップデートとWindows Updateを同時に行ってしまったことが問題だったのかも。

原因としては、Parallels Toolsがおかしくなってしまったことだったようです。

以下の手順で解決しました。

1.Parallels Desktopを起動
2.ゲストOS(私の場合はWindows7)を起動
3.Parallelsのメニューで「仮想マシン」→「Parallels Tools のインストール」を実行。

これでWindows落としてParallels落としてMac落として、最初から起動し直していったら治りました。ややこしい。

参考ページ
http://download.parallels.com/desktop/v5/docs/jp/Parallels_Desktop_Users_Guide/22575.htm

window.openがIEでうまく動かない。

window.openをしたとき、IEで真っ白いウインドウが開いたりすることがあります。ポップアップに中身が表示されません。
ブラウザのURL欄には、スクリプト(window.openだったりカスタムのfunctionだったり)が表示されます。
意図としてはwindow.openで指定したURLのページを開いて欲しいのですが、そうなりません。


原因として考えられるのは、window.openを指定してあるリンクに「target="_blank"」が指定されていること。別ウインドウを開くという点で同種の目的に使うものですから、制作途中でtargetを入れていて、javascriptに変更したときに抜き忘れると言うことがあるようです。

要するにIEでは、同じリンクにwindow.openとtarget="_blank"が同時に設定されているとおかしくなりますので要注意です。

イヤズマイレブンGO カードゲームのCMの神童拓人

神童拓人くん、2年生にして名門雷門中のキャプテンになるほどの器ですから、やはりカードゲームといえどもひと味違います。



1.良いカードを引いた瞬間に挑む。
彼我の戦力バランスが自分側に傾いたと思った瞬間に仕掛けます。

2.自分派閥と思われる2人の取り巻きを従える。
戦場をホームに演出する心理作戦です。

3.シタテの最強ワード「教えてくれ」。
万一負けたときの保険です。

4.その割にはカードの切り方が上級者。
完全に「教えて」もらうレベルとは思えない手さばきでカードを切ります。勝つ気、満々です。
CMでは勝ちパターン負けパターンが半々で放映されているようですが、いずれにしても最初から負ける気がなかったことは明白。

まさかこの短いCMにここまでの要素を盛り込んでくるとは、さすが超次元です。

Flashのビットマップのアニメーションががたがたする(汚い)

Flashでビットマップをアニメーション(トゥイーン)させると、自動的に補正されたドットががたがたして汚い問題。

FlashはJPEG、GIF、PNGなどビットマップのデータを読み込めますが、ビットマップをアニメーションさせると、アニメーションの途中で位置(座標)や拡大縮小時のサイズに小数点がでてしまうことがあります。というか、普通出ます。

FlashPlayerが画像の補整をするのですが、初期状態では補正の品質が低く設定されているようで、再生するとがたがた震えて見えたり、線がなめらかでなくなったり、モアレのような不思議な波が出たりします。

解決方法は、ライブラリでビットマップを右クリックしてプロパティを選択、「スムージング」にチェックを入れます。

再生するとビットマップのがたつきが無くなるのが確認できるはずです。
写真を拡大縮小するようなアニメーションでも波が立ったようになりません。

初期状態でこうなっていないのは再生時のCPU負荷を考慮しているのでしょうか。
あまり使いすぎないようにする必要はあるかと思います。