2

我在使用 jQuery 的加载功能时遇到了问题,希望能得到一些帮助。我刚刚开始测试我在 IE 中构建的站点以调试/破解/等以确保它可以正常工作。Firefox/safari/etc 都很好用。.load 对我不起作用。它似乎只是挂起。希望得到一些帮助。

这是问题的简化版本:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
      $(document).ready(function(){
        $("#links").load("newfull.asp #Body");
      });
  </script>
</head>
<body>
    <div id="links">
        test area
    </div>
</body>
</html>

页面可以在http://www.stephenkiers.com/2010/delete.html查看

4

3 回答 3

3

您是否尝试过将路径指定为绝对 URL 而不是相对于当前文档?

$("#links").load("/path/to/newfull.asp #Body");

快速浏览一下 jQuery 页面会发现相对 URL 应该是可以接受的,但我想它值得一试。

编辑:您打算用来#Body选择 body 元素还是 ID 为的元素Body

于 2009-10-20T03:56:10.840 回答
2

从您的问题来看,如果您只是在 IE 中遇到问题,尚不清楚,但是当我在 FF、Chrome 和 Opera 中点击提供的页面时,它会按预期加载。当我在 IE 中浏览它时,我得到一个空白页,如前所述。因此,我假设您遇到同样的事情并且 IE 无法像其他浏览器一样呈现。

在 Fiddler 中跟踪 IE 请求我看到内容页面 (newfull.asp) 被请求并传递,这表明问题出在传递给 load 调用的 jQuery 选择器上。由于它适用于其他浏览器,因此与特定页面相关的 IE DOM 似乎是一个怪癖(或者只是 jQuery 和 IE 的一般错误)。通常当我遇到此类问题时,我会检查标记的格式是否正确,在这种情况下会出现一些验证错误。解决验证错误并查看它是否对 IE 的行为有影响可能是值得的。

于 2009-10-20T02:54:49.483 回答
0

$("#links").load("newfull.asp #Body");

试试没有空间

$("#links").load("newfull.asp#Body");

于 2009-10-20T02:50:23.270 回答