電子書籍の厳選無料作品が豊富!

よろしくお願い致します。
現在、楽天市場のショップを構築しています。

やりたいことは、iframeで読み込んだ子ページからJavascriptで
親ページ(楽天のシステムで生成されたページ)のスクロール量を取得するというものです。

楽天市場はDOCTYPE宣言なし(互換モード)ですので
iframeで読み込む子ページもそれに合わせています。
iframeで読み込む子ページの記述は以下です。

window.onload = function(){
var st = window.parent.document.body.scrollTop;
alert(st);
}

自作の親HTMLと上記と同じ子ページでサンプルを作ったら
問題なく動作しました。
ただ、楽天市場の中で実行するとアラートのウィンドウすら開きません。
parentがうまく動かないのかなと思ったんですが、
テストで

window.onload = function(){
var st = window.parent.frames.length;
alert(st);
}

とすると楽天市場内でもアラートのウィンドウが開きフレームの数を表示してくれます。
parentの問題ではないのでしょうか?

行き詰まってしまったので皆さんのお知恵を拝借させて下さい。
よろしくお願い致します。

A 回答 (1件)

楽天ということなので、恐らく、


http://oshiete1.goo.ne.jp/qa4560033.html
と同じ理由だと思います。

JavaScirpt で異なるドメインの document を参照しようとするとセキュリティに引っかかります。

少ない知識のなかでですが、代替策としては、サーバスクリプトなどを使わないと難しいと思います。

あるいは、楽天に申請して、自分の管理しているドメイン間だけ許可してもらうなど。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます!

たしかによく見ると別ドメインでした。。。
できない理由がわかっただけでも非常に勉強になりました!
ありがとうございましたm(_ _)m

お礼日時:2008/12/25 18:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!