防止通过jquery.load()加载时重定向脚本

时间:2012-10-09 08:14:33

标签: javascript jquery jquery-load

我有一个页面,我正在加载另一个网址的内容(在同一个域中),如

$("#preloaded_main_page").load('main/');

现在由于页面中的一些脚本,当前页面被重定向到我想要阻止的domain.com/main。我想做的就是加载内容和内容。图像。请注意,我加载的div是隐藏的。我只想要缓存一些元素。

我试过了:

$("#preloaded_main_page").unbind().load('main/', function() {
  $("#preloaded_main_page *").unbind('click');
  $(window).unbind('hashchange');
});

但没有效果。有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

我看不到加载如何执行位置更改。我可以按照几个步骤来调试正在发生的事情。希望它有所帮助。

  1. 注释掉您的代码,并确保该网站的其他任何部分都没有进行重定向。
  2. 确保您尝试加载的主页上没有运行脚本标记。为什么?因为评估并执行了text / html MIME类型上的脚本标记。

  3. 尝试在.load方法上使用标准$ .ajax:

    $(document).ready(function(){      $就({               类型:'GET',               dataType:'text / html',               cache:false,               url:'/ main',               成功:函数(数据){                        if(data!='')$('#preloaded_main_page')。html(data);               }      }); });

  4. 代码标签似乎不起作用。所以你需要制作换行符,例如你自己:)

    -

    如果页面上有任何其他脚本重定向,则需要指定一个全局变量,确保它只在内容加载后重定向而不是重定向。如果是这样的话。