先日、いつものように Web ページで jQuery プログラムを書いててちょっとハマったのでメモ的に失敗談を開陳(恥)。 $(function(){}) は画像のロードを待たない? きっかけは U/I 系の jQuery プラグイン jScrollPane が期待どおりに動作しないという現象でした。このプラグイン、固定サイズのブロック要素が overflow した際のスクロールバーをミニマルなデザインに差し替えてくれる優れものです。現象とは、そのブロック要素に画像が含まれている場合にスクロールバーが表示されない、というもの。しかも Chrome や Safari の WebKib 系ブラウザに限って。 調べて判ったことを纏めると以下のようになります。 普段深く考えもせずおまじない的に書いてた $(function(){}) は、$(document).ready(function(){}