-1

我花了大约 4~5 个小时查看这个站点和其他站点上的类似问题,并且可以看到这是一个最喜欢的问题:但我无法找到特定于加载的代码 - 比如 50 个不同的 php 文件供查看 - 进入主 div . 线性分页不是目的。

在侧边栏 div 中,我有一个指向一本书章节的 html 链接列表(单独的 php 文件)。

我正在使用我给每个章节/主题/子主题的 id 作为 ajax jquery 的选择器(我绝对是所有这一切的初学者)!下面是我对第一节的实验。

<ul id="tocsub">
<li>
<h2>Section One</h2>
<ul>
<li><a href="#" id="ChI" name="ChI">Chapter I</a>
<ul>
<li><a href="#" id="T1" name="T1">Topic 1</a>
<ul>
<li><a href="#" id="Suba" name="Suba">Sub a</a></li>
<li><a href="#" id="Subb" name="Subb">Sub b</a></li>
</ul>
</li>
<li><a href="#">Topic 2</a></li>
</ul>
</li>
<li><a href="#">Chapter II</a></li>
<li><a href="#">Chapter III</a></li>
</ul>
</li>

我想在单击上述任何链接时在主 div 中交换这些章节/等。到目前为止,我正在使用下面的脚本来响应上述链接。

<script>
$(document).ready(function(){
  $("#ChI").click(function(){
    $("#posts").load("chapters/ChI.php");
  });
});
$(document).ready(function(){
  $("#T1").click(function(){
    $("#posts").load("chapters/T1.php");
  });
});
$(document).ready(function(){
  $("#Suba").click(function(){
    $("#posts").load("chapters/Suba.php");
  });
});
$(document).ready(function(){
  $("#Subb").click(function(){
    $("#posts").load("chapters/Subb.php");
  });
});
</script>

它似乎工作到这一点。我想知道:

1)这是朝着一个好的解决方案前进吗?脚本可以压缩吗?2) 是否可以扩展脚本以包含多达 50 个不同的 id(书的内容)?

如果您能提供帮助,请提前致以诚挚的问候,并感谢您在下面的回复!

经过更多研究后,我决定:

sample link:
<li><a href="#ChI" id="ChI">Chapter I</a>

sample script:    
<script>
$(document).ready(function(){
  $("#ChI").click(function(){$("#posts").load("chapters/ChI.php")});
  $("#T1").click(function(){$("#posts").load("chapters/T1.php")});
  $("#Suba").click(function(){$("#posts").load("chapters/Suba.php")});
  $("#Subb").click(function(){$("#posts").load("chapters/Subb.php")});
});
</script>
4

2 回答 2

2

在这个阶段,您显然知道但知道pagination,您应该专注于使用新链接重新加载页面。

查分页。

于 2013-07-08T11:12:43.550 回答
1

好吧,正如我所见,您有 4 个选项:

  • 链接到每个单独的文件(可能不是最好的)
  • 使用其他参数重新加载页面并使用您想要的特定页面加载内容 div
  • 将所有页面加载到不同的 div 中并隐藏不应该看到的页面
  • 通过ajax刷新divs内容

我不确定这里是否有首选方法,因为它们都有其优点和缺陷。

  • 加载每个单独的文件,我会说它的老派,你必须在每个文件中实现 pade 布局(使用页眉和页脚文件时除外)
  • 重新加载页面可确保没有 javascript 的人可以使用该站点
  • 所有页面到不同的 div(s) 从头开始​​加载所有内容(页面加载速度较慢),但在切换到新页面时更快
  • 使用 ajax 刷新 div(s) 可能是最快的解决方案(技术上)。第一个页面打开速度最快,各个页面不应加载太久。

重新加载整个页面或通过 ajax 刷新将是我个人的首选选项。但我想这总是取决于他最喜欢的开发人员。

于 2013-07-08T10:56:23.293 回答