我相信这是一个非常简单的问题,但我有多个页面,每个页面都有自己的“内容”,页面导航位于底部。在我开始编写脚本以生成几个不同的html文件之前,他们都有头部,主体和导航页脚代码......我怎么才能只有一个导航页脚实例,并且链接只更新'content' DIV?通过JavaScript更新元素的内容的如何更新单个div的html内容?
0
A
回答
3
非常简单的例子:
<div id="content"></div>
<script>
document.getElementById('content').innerHTML='<b>oh hai</b>';
</script>
要做到这一点,当有人点击一个链接,你的功能附加到onclick处理该链接,做了更新和然后返回false,以便链接不会执行正常的导航。
如果您不想将所有内容加载到单个文件中,则可以使用AJAX动态检索内容。您可能希望使用像jQuery这样的库/框架来简化AJAX交互的编码。
1
1
这可以通过几种不同的方式解决。您需要一次加载所有可能的内容(加载后可轻松访问内容,但初始加载速度较慢),或者您可以按照用户的要求异步请求内容。
1)具有硬编码的所有内容到一个页面
通过这样做,你会选择隐藏页面上的内容块:
<div class="content-blocks">
<div class="content" id="content1">...</div>
<div class="content" id="content2">...</div>
...
</div>
然后,每个环节将有事件处理程序将适当的内容加载到主内容元素中。
document.getElementById('content1-link').onclick = function() {
document.getElementById('content-box').innerHTML = document.getElementById('content1').innerHTML
}
2)使内容
为此AJAX请求,你的各种内容块将被存储在外部文件,例如'content1.html','content2.html'等。我强烈推荐使用这个方法的AJAX支持的JavaScript库,因为它们将处理浏览器处理异步请求的差异。有些人,像jQuery,还提供了方便的功能做了这样的任务:
$('#content1-link').on('click',function(){
$('#content-box').load('/path/to/content1.html');
});
3)使用包括报表
该方法具有易于实现第一方案的(不依赖于异步电动机请求),但它将您的内容保存在单独的文件中,如第二个解决方案。基本上,您可以使用任何类型的服务器/语言支持(例如SSI包括PHP require
等)。然后,您可以像第一个选项那样创建事件处理程序。
相关问题
- 1. 如何更改div内div的内容?
- 2. 以单个div更新内容,所有div名称相同
- 3. 如何刷新一个div的内容
- 4. jquery带有新内容的更新div
- 5. 如何更新DIV内容(如购物车DIV)
- 6. 更新HTML内容自动
- 7. 得到DIV的HTML内容是动态更新自身
- 8. 使用javascript更新div的内容
- 9. 如何刷新Div的内容?
- 10. 如何更改div的内容
- 11. 如何更改PHP中的div内容?
- 12. 打印HTML DIV的内容
- 13. HTML和div的内容
- 14. 的Html变化DIV内容
- 15. (更新)如何从帖子的单个*页*获取内容?
- 16. 更新DIV HTML和内容与阿贾克斯
- 17. 刷新DIV内容或DIV
- 18. 更新jQuery中的html内容
- 19. 如何在生成新的URL时更改div内容 - AJAX?
- 20. 如何在重定向后更新div的内容?
- 21. 如何使用视图文件内容更新特定的div?
- 22. 如何使用Javascript更新Firefox中的DIV内容?
- 23. HTML内容的outerHTML内容,并删除一个DIV
- 24. AJAX - 更新div内容 - 向后走?
- 25. CakePHP:使用AJAX更新DIV内容
- 26. 如何更改动态HTML的内容
- 27. 用每个新的GET请求更新html内容
- 28. 如何将一个div的内容镜像到另一个div的内容中?
- 29. 如何设置一个div的内容到另一个div的内容
- 30. 如何动态更改div内容?
这可能是过度杀伤,但如果你想抓住一个图书馆来完成一站式技术,我写了一个名为Lightning Touch的软件:http://trott.github.com/LightningTouch/ – Trott 2012-07-30 00:55:15