-2

我搜索了整个网站,但找不到任何对我有帮助的东西,所以这里是:

我有这个 html 文件,当您单击 Get extern 时,它应该将 extern.html 中的内容放入名为 content 的 div 中,但是当您单击链接时,它会显示加载,仅此而已。

在此处输入图像描述

test.html 文件

<script type="text/javascript" src="jquery-1.9.1.js"></script>
<script type="text/javascript"><!--
$(document).ready(function() {
  // select all the links with class="lnk", when one of them is clicked, get its "href" value
  // adds a "loading..." notification, load the content from that URL and
  // place only the paragraph which is in the #cnt into the tag with id="content"
  $('a.lnk').click(function() {
    var url = $(this).attr('href');
    $('#content').html('<h4>Loading...</h4>').load(url+ ' #cnt p');
    return false;
  });
});
--></script>
</head>
<body>
<h1>Web page test.html</h1>
<a href="extern.html" title="Get extern" class="lnk">Get extern</a>
<div id="content">Initial content in test.html</div>

extern.html 文件

<h2>Content in extern.html</h2>
<div id="cnt"><p>Some text content in extern.html</p></div>
4

2 回答 2

1

我的猜测是您尝试加载外部网页,但它被浏览器中的同源策略阻止。如果没有,有一个快速的方法来调试它。

1) 我最喜欢的是使用 Chrome 开发者面板(按 F12 打开)。转到网络选项卡并尝试通过您的 jQuery 加载外部页面。然后您可以观察网络活动,看看是否出现任何错误。

2) 用户 $.ajax 而不是 $.load。有关更多选项,请参见此处:$.ajax 实用程序中的 JQuery 错误选项

如果问题确实是相同的域策略,请查看 jQuery 的 JSONP 功能。一个例子在这里:http ://www.jquery4u.com/json/jsonp-examples/

希望这可以帮助!

于 2013-03-17T01:44:58.693 回答
0

通常,当脚本未成功执行或发生某些逻辑/语法错误时,会出现此“正在加载” 。我假设你用 firebug 验证了你的脚本,我建议你用$.noConfllict(); 如果您的页面有多个脚本块和库相互冲突。

于 2013-03-17T01:51:55.517 回答