2

これが私がやりたいことです。外部Webサイトを指すjavascriptで非表示のiframeを作成し、javascriptを使用してその非表示のiframeのhtmlソースコードをテキストボックスと変数として取得したい(iframeがロードされない場合はエラーチェックを行い、ユーザーに尋ねる可能性があります)リロードする...)これまでに私はこれを試しましたが、非表示にしてソースコードを読み取る方法は?事前に感謝します。

<script language="JavaScript" type="text/javascript">

ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", "http://www.somesite.com/");
ifrm.style.width = 640+"px";
ifrm.style.height = 480+"px";
document.body.appendChild(ifrm);
</script>
4

1 に答える 1

1

Same Origin Policyのため、iframe でそれを行うことはできませんが、サーバー側を使用することはできます。php を使用すると、次のようになります。

if (isset($_GET['url'])) {
   $ch = curl_init(); 
   curl_setopt($ch, CURLOPT_URL, $_GET['url']); 
   curl_setopt($ch, CURLOPT_HEADER, FALSE); 
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
   echo curl_exec($ch); 
   curl_close($ch);
}

そのスクリプトをajaxで呼び出すことができます(jQueryを使用するとそうなります)

$.get('script.php', {url: 'http://www.somesite.com/'}, function(page) {
   alert(page);
});
于 2012-12-10T06:43:21.527 に答える