ひらい ぶらり Hi-Library

ぷろぐらみんぐについて。ときどきどうでもいいことについて。

$(function(){})を使う際の注意

自分で全部JavaScriptを書いているのならいいけれども、どこかにぶち込んで使ってもらうような、ライブラリチックな使い方をするときは注意したいこと。

$(function())は$(document).ready(function())の省略系で、この記述が複数個あっても何も問題ない。

あらかじめ普通にwindow.onload = function(){}見たいに書かれてしまうとバグがおきる。

IEだけ。

またIEか。

基本的には$(functio())はDOMがすべて読み込み終わったら実行される命令だがwindow.onloadが設定されていると、若干読み込みがすべて終わる前に実行されることがあるみたいだ。そこでもしDOMを操作するような命令を書こうものなら
「ページを開けませんでした。操作を中止します」
とかいうふうに怒られる。

IEだけ。

苦肉の策としては

if (window.onload) {
    $(document).load(function());
} else {
    $(ducument).ready(function());
}

くらいしか出来なかった。