我有一个曾经工作正常的脚本,但现在没有了,有人能指出原因吗?
应该发生的事情是引用的链接被插入目标1,目标2被更新为来自脚本中引用的其他两个来源的新内容。
但是,在页面加载后的第一个clck中,只有目标1会更新。在后续点击中,链接会加载href项目,替换页面上的所有内容。
这是页面:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Dynamic Content Page</title>
<script src="/jquery-1.11.0.min.js"></script>
</head>
<body>
<nav>
<ul>
<li>
<a class="loader" href="php/originalcontent1.php">Load original items</a>
</li>
<li>
<a class="loader" href="php/newcontent1.php">Load new items</a>
</li>
</ul>
</nav>
<main>
<aside id="target2">
<?php include 'php/originalcontent3.php' ;?>
<?php include 'php/originalcontent2.php' ;?>
</aside>
<section id="target1">
<?php include('php/originalcontent1.php') ;?>
</section>
</main>
</body>
<script src="/dynamiccontent.js"></script>
</html>
这是脚本“dynamiccontent.js:
$('.loader').click(function(){
$('.loader').unbind('click');
var url = $(this).attr('href');
$('#target1').load(url);
$('#target2').load(['php/newcontent2.php', 'php/newcontent3.php']);
return false;
});
答案 0 :(得分:2)
我在documentation中看不到加载的第一个参数可以作为URL以外的任何其他参数加入。
您的代码表示在点击标记为class="loader"
的任何项目时停止跟踪点击次数。这就是这一行:
$('.loader').unbind('click');
因此,后续点击会按照通常在链接上执行的操作,按照href
属性进行操作。