3

私はiframeアプリを持っています。-error in chrome forというアラートが表示されtop.location.hrefます。

jQuery.ajax({
          type : 'get',
          url : 'check_if_fb_data_set.php',
          success : function(response){
          if(jQuery.trim(response)  == 'success') {
            top.location.href = "http://mysite.com";
          } else {
                setTimeout(CheckIfFbDataSet,2000);
          }                     
        }, error : function (jqXHR, textStatus, errorThrown){
          console.log(errorThrown);
        }
});

私が試してみました

  1. location.reload()
  2. window.location.href = window.location.href;
  3. document.write(' メタリフレッシュ........');
  4. document.write('< script> window.location ........ < /script>');

3 つ目は機能しませんでしたが、他の 4 つすべてで同じエラーが発生しました。他にテストする方法はありません。

4

3 に答える 3

1

含まれているページで iframe がサンドボックス内に配置されている可能性があります。Firefox や Chrome などの HTML5 ブラウザーは、まさにこの種の動作を防止できるサンドボックス属性をサポートしています。

たとえば、ページが

<iframe src="url" sandbox="allow-forms allow-scripts"></iframe>

が設定されてallow-top-navigationない場合、コンテンツはトップ ナビゲーションを変更できません。

于 2012-08-03T11:22:19.657 に答える
1

試す:

window.location = window.location;

また

window.location.reload();
于 2012-08-03T08:42:37.830 に答える
0

問題は、トリガーされたエラーコールバックを持つ別の ajax 関数があり、そこにalert(textStatus +''+ errorThrown)

于 2012-10-31T08:18:39.310 に答える