2012-02-02 8 views
1

私はiframeにHTML/JSを記述する必要があるアプリケーションを開発しています。私はこれが自分自身の名前空間などであると思ったのでiframeを選んだので、JS変数名などに関しては矛盾することはありません。iFrame内からdivを参照しています

しかし、今ではdivの参照をしようとしていますJSのiframeで。フレームには、関数を呼び出すボタンがあります。

function colorDiv(){ 
    $("#test").css("background-color","red"); 
}; 

親では、これは問題なく動作します。 (もちろん、これは基本的なテストシナリオです。ハイチャートでこのdivにグラフを書いてみたいのですが、これはうまくいかず、理由を見つけようとしています)

iframeでは、ジップします。 divは色付けされません。関数は呼び出されますが、エラーはありませんが、色もありません。

(親にも 'test'というdivがあると言うと役立つかもしれませんが、関数colorDivのdiv#testの数を数えると、1を返します。 jqueryがロードされているかどうかをチェックしています...)

最初の2つの回答、私は十分に分かりませんでした:おそらく:内のdivを変更しようとしているiFrame。親ウィンドウではなく、iframe内のスクリプトから同じiframe内のdivに移動します。だからこそ、私はそれがうまくいかず、これがうまくいかないと思うのです。...

誰もがこれを少し光らせてくれますか? :)

に関して、

ポール

+0

はあなたをしましたあなたのiframeからの参照jquery? – jerjer

答えて

0

あなたはインラインフレーム内から親でDIVを呼び出そうとしていますか?あなたは親を呼び出す必要があります$代わりに:。

parent.$("#test").css("background-color","red"); 
+0

は、同じiframe内のdivを変更しようとしていることを明らかにしました... –

0

試してみてください。

$('#test', top.document).css("background-color","red"); 

または私はあなたの質問を理解していませんか?

+0

は、同じiframe内でdivを変更しようとしていることを明らかにしました。したがって、top.documentはiFrameの親を参照します。私が変えたいものではない... –

0
function colorDiv(){ 
    window.opener.$("#test").css("background-color","red"); 
}; 
1

私が持っている場合topicstarter右 - あなたはは、子ドキュメント内の操作のためにそれを使用することができるように、IFRAMEの内部で使用されているjQueryのlibary再び内部、HTMLページが含まれている必要があり