私は2つのウェブサイトA.comとB.comを持っています。A.comのiframeにB.comを埋め込む必要があります。B.comで変更を加えることはできません
B.comは、一部の投稿データを含む投稿リクエストでのみ機能します。私はこれを次のように機能させています
<!--This is the div inside which I will embedd the iframe-->
<div id="frameDiv"></div>
<script type="text/javascript">
//Create iframe
var $ifr = $('<iframe name="myFrame" id="myFrame"></iframe>');
//create form
var $form = $('<form action="B.com" method="post" target="myFrame"></form>');
//Append hidden field to form to pass postData
$form.append($('<input type="hidden" name="dataName"><input>').val('data'));
//Append form to the iframe and then append iframe to the div
$('#frameDiv').append($ifr.append($form));
$form.submit();
</script>
これで、B.comはiframe内に完全に読み込まれ、POSTリクエストに応答します。しかし、B.comは遅いです。iframeが読み込まれるまで#frameDiv内にスピナーを表示したいと思います。これどうやってするの?
これは私が試したものです:
$('#frameDiv').append($spinnerImage)
//Does not work, fires immediately
$ifr.load(function(){
//Hide the spinner image
});
//Does not work, fires immediately
$ifr.ready(function(){
//Hide the spinner image
});
B.Comが単純なgetであり、iframeのsrc属性として設定されている場合、jQueryloadメソッドがそのトリックを実行します。しかし、この場合はそうではありません。
どんな助けでも大歓迎です:)