人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

htmlの読込完了時に起動する処理をjQueryを用いて書きたい。
具体的には、jQuery1.6.4を使用して、a.html内にあるiframe(id=hoge)のsrcを変化させた[$("#hoge").attr("src", "test.html");]場合、そのhogeの中の表示が終わる(イメージ等遅延読込も含めて)タイミングで、何かしたい場合です。
onLoad・onreadystatechangeイベントに無名関数登録でも、isReady監視でもできませんでした。環境は、windows xp/ie7 or firefox6.0.2です。
ちなみにjQueryでなくjavascriptだけで書けるのであれば、それでも構いません。
よろしくお願いします。

●質問者: mamekko
●カテゴリ:インターネット ウェブ制作
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● Cherenkov
●33ポイント

iframeは同一ドメインでしょうか?

iframeを編集できますか?

編集できるのであればiframe側で適当なタイミング(imgのonload等)に適当なイベントをtrigger()で発行して親フレームでそれをキャッチすればいいのではないでしょうか。


参考:

Trigger from iframe to parent window - jQuery Forum

◎質問者からの返答

iframeは同一ドメインではありません。言葉足らずでした。


2 ● じゅぴたー
●66ポイント

DOMの準備ができたかどうかで判断してはどうでしょうか。


bindReady()メソッドを参考にしてみてください。

◎質問者からの返答

参考にさせて頂きましたが、「arguments.callee」を使用することはjQuery1.4以降禁止されているようです。これを使わない方法はありますか?


3 ● a-kuma3
●201ポイント ベストアンサー

http://jsfiddle.net/8jGPu/

jsFiddle で、ちょろっと書いてみましたが、iframe の load で関数を登録する、

というのでは駄目なのでしょうか?


# FF5.0 で確認

◎質問者からの返答

jsFiddle ではうまくいってますが、私の環境ではだめでした。

ちなみに、IEは8でした。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ