MW211 EXIT

devlog
jQuery/幅をパーセントで指定
2011年12月31日
①「$("識別").style.width = 値」と②「$("#識別").width(値)」の違い。
①の「$」は以下の定義。①は一般的なJavaScript、②はjQueryってことで。
┌──────────────────────────────────────┐
│function $(id) {return document.getElementById(id);}                        │
└──────────────────────────────────────┘

値を取得したい場合は、②の場合「$("#識別").width()」と引数を空にすればよい
…ってのは、初歩の初歩だが、他に以下の違いがある。

CSS等で初期値を設定している場合、
①はJavaScript的に値を代入していなければ、値は「」となるが、
②はJavaScript的に値を代入していなくても、値を返してくれる。

①の解決方法としてはwindow.onloadで値を代入してしまえばよい。
(というのが妥当かはちょっと不安)

で、本題。
幅とかは数値ではなく比率でも指定してできるが、
①はそのままだけど、②は親階層に比率を掛けて数値にしてくれる。
例えば50%を指定した場合、一つ上の階層(外側)の幅が「200px」だった場合
①は「50%」のまま、②は「100」になる。
┌──────────────────────────────────────┐
│$("識別").style.width = "50%"                                               │
│$("識別").style.width → 「50%」                                            │
├──────────────────────────────────────┤
│$("#識別").width("50%")                                                     │
│$("識別").style.width → 「100」                                            │
└──────────────────────────────────────┘
ただね、この掛け算、小数点以下はなくなるのだけど
ブラウザにより、切り捨て、四捨五入とか若干異なるみたい。
分類:jQuery