1

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

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

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

我试过了:

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

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

4

1 回答 1

0

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

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

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

    $(document).ready(function () { $.ajax({ type: 'GET', dataType: 'text/html', 缓存: false, url: '/main', 成功: function (data) { if( data != '') $('#preloaded_main_page').html(data); } }); });

代码标签似乎不起作用。所以你需要换行,这样你自己:)

-

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

于 2012-10-09T08:29:21.280 回答