• 締切済み

フレームで表示すると作動しないJavascript

ボタン画像に次のようなタグを配置してツイッターに跳ぶようにしてあるページ、main.html があります。 <a href="javascript:window.location='http://twitter.com/home?status='+encodeURIComponent(document.title+' '+location.href);" target="_parent"> <img src="twitter_s.png" alt="つぶやく" width="162" height="23" hspace="1" border="0" align="absmiddle"></a> このmain.htmlを直接開いてボタンをクリックすれば正常にツイッターのウインドウが開くのですが、 <frameset rows="56,231" cols="*" framespacing="0" frameborder="no" border="0"> <frame src="index_f.html" /> <frame src="http://www.○○○.@/main.html" /> </frameset> という形でフレームにこのmain.htmlが表示される状態で開くと、 Mac+Safariでアクセスした場合はボタンをクリックしても何も起こらなくなってしまいます。 Winではフレーム無いに表示する形でも正常に作動します。 何が原因なのでしょうか? Safariを利用するMacユーザーがフレームからでもツイッターに跳べるようにするには上記のタグのどこをどう直したら良いでしょうか? 尚、現ページの内容をツイッターに書き込めるようにするタグは他にもWeb上で紹介されているのを見かけましたが、出来るだけ現状のタグとリンク方法を変えずに解決したいと思っています。 上記タグの書き換えで解決する方法がおわかりの方がいらっしゃいましたらどうかよろしくお願い致します。

  • R4-D4
  • お礼率100% (81/81)

みんなの回答

回答No.1

同一ドメイン制限のセキュリティーに引っかかってるんじゃないでしょうか。 <frame>のsrcとスクリプトのsrcをすべて同一ドメイン(サブドメインとも)上に配置してみてはいかがでしょうか。 なお、IEでは、 この設定は<form>の送信に関しての設定ですが、 インターネットオプションのセキュリティ設定で、「ドメイン間でのデータソースのアクセス」や、「異なるドメイン間のウインドウとフレームの移動」などでセキュリティーを強化できます。

R4-D4
質問者

お礼

ご回答ありがとうございます。 下フレームに入れてあるコンテンツはどうしても上のフレームの内容と別ドメインにしなければならない事情のあるものなので、その内容をツイートさせるにはフレームに入れて別ドメインにしなければならないのですが、原因を特定するためにと同一ドメイン内にフレームセットを用意して実験してみました。 しかし、index.htmlも上フレームも下フレームも全て同じドメインの同じ階層にしてみてもフレーム内からはツイッターに跳ぶことができませんでした。

関連するQ&A

  • フレームが表示できない・・・。

    ヤフーのジオシティでHPを作ってるのですが どうやってもフレームが表示されません。 下の↓タグなんですがどこか間違ってるでしょうか? <frameset cols="70%,30%" border="0"bordercolor="BLACK" frameborder="no" framespacing="1"> <frame src="http://www.geocities.co.jp/Hollywood-Screen/1234/*****/abc.html"name="ringo"> <frame src="http://www.geocities.co.jp/Hollywood-Screen/1234/******/abc2.html"name="ringo2"> </frameset> ファイルをアップロードしたからでしょうか? それともIE5.5だからでしょうか?でも普通に 他サイトのフレームは表示されてるし・・・。 どうすればフレームは表示されるのでしょうか??

  • フレームを使ったページ

    <FRAMESET ROWS="105,*" BORDER="0" FRAMEBORDER="0" FRAMESPACING="0" NOBORDER> <FRAME SRC="menu.html" name="menu" scrolling="no" noresize marginwidth="0" marginheight="0"> <FRAME src="main.html" name="main" scrolling="no" marginwidth="0" marginheight="0"> </FRAMESET><noframes></noframes> 上記フレームを使ったページを更新ボタンで更新すると横にスクロールバーが表示されます。 スクロールバーがでるのは上のページ(menu.html)で下ページ(main.html)にはでません。 win(Netscape,IE)で確認するとでないのですがMac(IE)だとスクロールバーがでてしまいます。 どうすれば解消できるでしょうか。 教えて下さい。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • フレームで表示すると

    自分でフレームを組んだのですが、 IEだと大丈夫だったのですが、 NN4.7で崩れてしまいました。 フレームの間に白い線が入ってしまいます。 原因がわからず、ここに質問しております。 一つの画像を縦3つに分け、真ん中は横3つに分け、 合計5マド構成のフレームにしたいと思っています。 インラインフレームのような感じです。 インラインフレームだとNNでは表示されないので、 このような形にしようと思いました。 下記のようなソースでは何か問題があるのでしょうか。 教えてください、宜しくお願いします。 <frameset rows="*,*,*" frameborder="0" framespacing="0" border="0"> <frame src="top.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> <frameset cols="*,*,*" frameborder="0" framespacing="0" border="0"> <frame src="midddle_left.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> <frame src="midddle_midddle.htm" marginwidth="0" marginheight="0" scrolling="yes" noresize> <frame src="midddle_right.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> </frameset> <frame src="bottom.htm" marginwidth="0" marginheight="0" scrolling="no" noresize> </frameset>

  • location.hrefを使用したFRAME表示

    location.hrefを使ったjavascriptを作ろうとしています。 <script type="text/javascript"><!-- location.href = "http://www.yahoo.co.jp/"; // --></script> の改良版として、http://www.yahoo.co.jp/をフレームの右側に 表示させたいと考えています。 (src使用ではなくjavascriptのlocation.hrefを使うことがMUSTです) <head> <script type="text/javascript"><!-- right.location.href = "http://www.yahoo.co.jp/"; // --></script> </head> <body> <FRAMESET cols="50%,50%"> <FRAME name="left" src="left.html"> <FRAME name="right" src="right.html"> </FRAMESET> </body> としてみましたがうまくいきません。 location.hrefはmetaタグ内でしか有効ではないにも関わらず right.の指示をメタタグ内部で指定していないことが原因かも しれません。 javascriptのlocation.hrefを使ってフレームの右側に 表示させる方法をご教授願います。

  • フレームすくローリング有り/無し

    こんにちわ だいぶ前に登録してから、久しぶりに 質問させて頂きます。  フレームページの作成をしております。  右がメインで、左がメニューの一般的なものですが、  左のメニューフレームについて、、、 縦幅はスクロール有り 横幅はスクロール無しにし、幅を固定したいのですが HTMLタグ辞典や調べて探しきれませんでした。 既に同じ質問が出ていたら申し訳ありません、 何卒宜しくお願い致します。  現在 indexのタグは以下のとおりです。 --------------- <frameset rows="*" cols="150,*" frameborder="NO" border="0" framespacing="0"> <frame src="left_frame.htm" name="leftFrame" scrolling="auto" noresize>  ↑↑↑↑↑↑↑↑ auto にすると、横も縦も  スクロール出てしまいます;_; <frameset rows="82,*" cols="*" framespacing="0" frameborder="NO" border="0" Marginwidth="5"> <frame src="frame_above.htm" name="topFrame" scrolling="NO" noresize> <frame src="main.htm" name="mainFrame"> </frameset> </frameset> <noframes><body> ---------------

  • フレームに関する制御、文書間にまたがる制御

    フレームページのソース <frameset rows="100%,66,*" border=0 frameborder=0 framespacing=0 framecolor="#000000"> <frame name=metrouser src="x.html" scrolling=auto> <frame name=metroowner src="m.html" scrolling=no marginheight=2 marginwidth=0> </frameset> --------------------------- 以上のような場合に、x.htmlに記述したjavascriptでm.htmlのページを制御したいのです。ただし、frameには名前が付いていないことに注意してください。 したい制御方法 ・ページを変える  たぶん、location.href=を使えばよいと思うのですが、よく分かりません。 ・フレームの幅を変える  100%,66,* から任意のものに変更する 以上の2通りの制御方法を教えて欲しいです。 よろしくお願いいたします。

  • フレームページが崩れる。。。

    フレームページを使っているのですが、見る人によってはページの一部が切れて 見えない部分もあるらしいです。ブラウザの大きさを変えてもレイアウトだけは 崩さない為には、どこにどんなタグが必要なんですか? 現在のフレームの親ページのソースです。 <FRAMESET rows="30%,70%" frameborder="NO" border="0"> <FRAME src="ue.html" scrolling="NO" noresize> <FRAMESET cols="20%,80%" frameborder="NO" border="0"> <FRAME src="side.html" scrolling="NO" name="menu" noresize> <FRAME src="main.html" name="main" noresize> </FRAMESET> <NOFRAMES>

    • ベストアンサー
    • HTML
  • フレームが表示されない…

    今HPを作成してるのですが、色々とタグを試しましたが出来ないの質問します。 自分は、ポケスペというタグで色々と作成できるHPスペースで作ってるのですが、 <p align="center"> <iframe src="http://pksp.jp/*/?o=1" name="menu" frameborder="0" width="20%" height="90%"> </iframe> <iframe src="http://pksp.jp/*/?o=2" name="main" frameborder="0" width="70%" height="90%"> </iframe> </p> というタグで、インナイフレーム?は表示出来るのですが。 <FRAMESET cols="50%,50%" frameborder="NO" border="0"> <FRAME name="left" src="1のURL"> <FRAME name="right" src="2のURL"> </FRAMESET> という、普通の?インナイじゃないフレームは表示されないのです。 どなたか、わかりますか?インナイじゃなくフレームを表示させたいのです。

  • フレームページの固定について

    お世話になります。 下記のようなフレームページを作成しているのですが、 変更をしたいと考えております。 その場合、全体の幅を860pxに固定したいのです。 一応、<FRAMESET COLS="250,610" と行ったのですが、 右側が広がってしまいます。 どのようにしたらよいか教えていただけないでしょうか。 <FRAMESET ROWS="350,*"> <FRAME NAME="_bs1" SRC="aa1.html"> <FRAMESET COLS="250,610" border=0 framespacing=0 frameborder=no> <FRAME NAME="_bs2" SRC="aa2.html" MARGINWIDTH="0px" MARGINHIGHT="0" NORESIZE> <FRAME NAME="_bs3" SRC="aa3.html" MARGINWIDTH="0px" framespacing=0 MARGINHIGHT="0" NORESIZE> </FRAMESET> </FRAMESET><noframes></noframes> </HTML>

  • ブラウザによってフレームの表示が異なるのですが..

    はじめまして。 現在下記のような形のHPを制作しているのですが、フレームが難しくてなかなか進めません。 ブラウザやそれぞれの環境によって見え方が違ってしまいます。 私の環境では真ん中にぎゅっと詰まってスクロールが出てしまうような小さな見え方になってしまっています。 どの環境で見ても統一させるにはどのようにしたら良いのでしょうか。 ------------------------------ 上の固定バー ------------------------------ メニュー|内容     |     |     |     | ------------------------------ 下の固定バー ------------------------------ ソースは以下のように組みました。 <frameset rows="10%,*" cols="*" framespacing="0" frameborder="no" border="0"> <frame src="Margin/Index.html" scrolling="No" noresize title="topFrame"> <frameset rows="*,230" cols="*" framespacing="0" frameborder="no" border="0"> <frameset cols="215,*" frameborder="no" border="0" framespacing="0"> <frame src="Margin/Index.html" scrolling="No" noresize title="menuBarFrame"> <frameset cols="*,25%" frameborder="no" border="0" framespacing="0"> <frameset rows="64,*" frameborder="no" border="0" framespacing="0"> <frame src="topbar/topbar.html" scrolling="No" noresize title="topBarFrame"> <frameset rows="*,41" cols="*" framespacing="0" frameborder="no" border="0"> <frameset rows="*" cols="178,*" framespacing="0" frameborder="no" border="0"> <frame src="menu/menu.html" scrolling="No" noresize title="leftFrame1"> <frame src="top/top.html" name="main" title="topFrame"></frameset> <frame src="bottombar/bottomBar.html" scrolling="No" noresize title="bottomFrame1"> </frameset> </frameset> <frame src="Margin/Index.html" scrolling="No" noresize title="rightFrame"> </frameset> </frameset> <frame src="Margin/Index.html" scrolling="No" noresize title="MenuBarFrame"> </frameset> </frameset> <noframes> ------------- また、現在フレームは推奨されないのも知っているので、 オススメの組み方がありましたら教えていただけませんでしょうか。 HTML等に関してまったくの初心者ですので、判り易く教えていただけたら大変有り難く思います。どうぞよろしくお願いします。

    • ベストアンサー
    • HTML

専門家に質問してみよう