プロが教える店舗&オフィスのセキュリティ対策術

インラインフレーム、フレーム、新規ウィンドウなどでウェブページを開いてリンクを抽出するにはどうしたらよいのでしょうか?

試した方法は、親ファイルでiframe名.location.href="目的のURL"としインラインフレームでウェブページを開いた後、
http://blog.bulknews.net/mt/archives/001099.htmlのブックマークレットをiframe名.location.href="ブックマークレット"でリンク抽出しようとしたのですが、ブラウザはブックマークレットとして認識してくれず、「ページが表示できません」となってしまいます。
ただ、ウェブページではなくローカルに置いたファイルを開いたのち、同じくiframe名.location.href="ブックマークレット"すると上手く動作してくれるのですが……

ウェブページでもブックマークレットを動作させる方法、あるいは親ファイル内のjavascriptでブックマークレットに相当する動作をするjavascriptの書くなどがあればぜひ教えてください。

A 回答 (2件)

> ソースの書き方を工夫してなんとか違うアプローチででもできませんかね?



なにかのバグで出来てしまう可能性も0ではありませんが、一時的に実現できたとしても将来的にセキュリティホールとして修正されてしまうでしょうから(どのような状況で利用するかにもよりますが)やはり利用するべきではないかと思います。

>DOMのマニュアルがもう少し分かりやすければ
私もわかりやすくてここだけ見れば、というマニュアル/サイトはわかりませんが、DOMでiframe内のドキュメントにアクセスというとcontentDocumentやcontentWindowになると思いますが、別ドメインはやはりダメなようです。
    • good
    • 0

Javascriptではセキュリティ上の理由でフレームに読み込まれた別ドメインのページの内容にはアクセスできません。


ローカルで動いてウェブ上でうまくいかないのは、その制限の為だと思います。
    • good
    • 0
この回答へのお礼

おっしゃるとおりの原因のようです。
フィッシング詐欺やらなんやらの防止のために、ブラウザに組み込まれているのでしょうか。
IE3のような古いブラウザでもうまくいきませんでした。
ソースの書き方を工夫してなんとか違うアプローチででもできませんかね?DOMのマニュアルがもう少し分かりやすければなんとかなりそうなのですが。

お礼日時:2005/05/02 00:26

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