Javascript 我们如何仅更改网页的内部部分?
我正在开发一个web应用程序,其中所有页面的页眉和页脚都是相同的。我想要实现的是,单击页眉中的按钮时,只更改页眉和页脚之间的页面部分。例如,有3个按钮“主页”、“活动”和“区域”。如果单击“活动”,则页面的页眉和页脚应保持不变,活动页面应位于页眉和页脚之间。我该怎么做?当页面交付时-页眉+正文+页脚合并。您可以将此视为一页。因此,如果您在标题中调用了正文中的一个元素,称为“Container”,那么如果您将其包含在正文部分,您将能够修改它。您使用的是PHP还是服务器端页面?您可以只包含页眉和页脚。Jquery非常复杂,只想在页面上包含页眉和页脚。您正在寻找的是AJAX(异步JavaScript和XML的缩写) 在jQuery中,您可以使用Javascript 我们如何仅更改网页的内部部分?,javascript,jquery,html,Javascript,Jquery,Html,我正在开发一个web应用程序,其中所有页面的页眉和页脚都是相同的。我想要实现的是,单击页眉中的按钮时,只更改页眉和页脚之间的页面部分。例如,有3个按钮“主页”、“活动”和“区域”。如果单击“活动”,则页面的页眉和页脚应保持不变,活动页面应位于页眉和页脚之间。我该怎么做?当页面交付时-页眉+正文+页脚合并。您可以将此视为一页。因此,如果您在标题中调用了正文中的一个元素,称为“Container”,那么如果您将其包含在正文部分,您将能够修改它。您使用的是PHP还是服务器端页面?您可以只包含页眉和页脚
是一个关于如何使用php实现这一点的示例/教程。您需要向服务器发出AJAX请求。服务器将使用HTML在页眉和页脚之间进行“注入”。AJAX回调hendler将用新内容替换当前内容
所有这些都是通过jQuery中的快捷方式
load
函数完成的。请参见创建包含内容的div,并为其指定唯一的类或id。
然后,在jquery代码中绑定一个单击事件,单击要用作导航的元素,并在该绑定中使用$(“#div”).load(“page.php”)或类似的东西将另一个文件中的内容加载到div我同意rlemon。我认为jQuery/AJAX是您需要的。例如:
<html>
<head>
<!-- Include Jquery here in a script tag -->
<script type="text/javascript">
$(document).ready(function(){
$("#activities").click(function(){
$("#body").load("activities.html");
});
});
</script>
</head>
<body>
<div id="header">
<a href="#" id="activities">Activities</a>
<!-- this stays the same -->
</div>
<div id="body">
<!-- All content will be loaded here dynamically -->
</div>
<div id="footer">
<!-- this stays the same -->
</div>
</body>
</html>
$(文档).ready(函数(){
$(“#活动”)。单击(函数(){
$(“#body”).load(“activities.html”);
});
});
在这个简单的实现中,我刚刚创建了两个简单的HTML页面,index.HTML将用作模板。和activities.html,其中包含我要动态加载的内容
因此,如果我单击Activities,它应该将Activities.html加载到中,而不会重新加载整个页面
您可以从下载jquery库
我还没有测试过这个,但它应该可以工作
希望有帮助:-)或者,这可以通过iFrame实现。父页面(带有页眉和页脚)可以控制iframe并强制其导航 权衡:
- 这可能会稍微慢一点(加载整个页面)
- 根据您的情况,这可能更简单
links
。不要执行$(“#活动”)。单击(function()…
,您可以执行$(“.links”)。单击(function()
。在每个链接上,您可以有一个与要加载的页面名称匹配的属性。类似于此
。要加载它们,您可以执行以下操作:$(“#body”).load($(this.attr)(“page”)+“.html”)
。现在,使用相同的逻辑,您可以拥有10多个页面。