jQueryを使ってAjaxリクエストを学習する過程で、リンクのクリックでgoogleのホームページを読み込もうとしました。体内のjQueryのロードメソッドから外部リソースをロードできないのはなぜですか?
$("#ajax").click (function (event) {
$("#g").html("Loading...");
$("#g").load("http://www.google.com");
event.preventDefault();
});
そしてどこか:だから私のような何か書い
<a id="ajax" href="http://www.google.com">Load file ajax way</a>
<div id="g">Click the above link to load the page...</div>
動作しませんでしたし、最初に私はいくつかの構文エラーか何かがあると思いました。しかし、後で私はGoogleのURLをサーバー上の静的なHTMLファイルに置き換えたとき、正しく動作しました。
$("#g").load("Temp.htm");
このように機能するように設計されていますか(そうであれば、なぜですか)、何か間違っていますか?
編集:誰でも、クロスドメインajaxコールで導入されたセキュリティ問題を説明(または参照)できますか?言い換えれば、別のブラウザタブを開いてgoogleを開いても、ページ内から開くのはなぜ安全なのですか?それは呼び出し元または呼び出し先を保護することですか?
+1すばらしい答え。 –
非常に徹底的で完全な答え –
ですので、load.phpは照会されたドメインを読み込んで内容を保存するだけですか? – 3zzy