滚动
          
        如何使整个页面不重新加载
论坛
              
          你好。
我正在为Drupal 7创建一个主题,目前一切似乎都在顺利进行。不过有几个问题需要解决。
关于我的主题的一些信息。
在primari_link区域有一个主菜单(用于选择内容类型),(在header区域也有)
还有一个特定类型文章的导航菜单,它会根据主菜单的选择而变化。(在左侧栏区域)和(在main-wrapper区域)
并且有一个内容列,其中显示的内容类型取决于主菜单的选择。 (在右侧栏区域)和(在main-wrapper区域)
第一个问题。
如何使得在primari_link中选择时,仅重新加载结构下方的区域。因此, main-wrapper区域
然后在左侧栏区域选择时,仅重新加载右侧栏区域。
我理解这里需要使用ajax,但我没有找到相关的资料。
第二个问题
如何使得在左侧栏中显示特定的内容类型。(特殊类型-表单)每个主菜单项的列表都是不同的,并且在右侧栏中根据左侧栏中选定的元素显示相应内容。
第三个问题
我做了三个列,它们的高度不同。我希望它们的高度一致。使用Div进行格式化。
在page.tpl.php中使用的是drupal 7
以下是代码片段
<script language="JavaScript" type="text/javascript">
	function setEqualHeight(columns){
		var tallestcolumn = 0;
		columns.each(function(){
			currentHeight = $(this).height();
			if(currentHeight > tallestcolumn){
				tallestcolumn = currentHeight;
				}
			}
		);
		columns.height(tallestcolumn);
	}
	$(document).ready(function() {
		setEqualHeight($(".container > div"));
});
</script>
不工作!!!
我做错了什么?浪费了一整天。
终于在晚餐后解决了这个麻烦 :) 原来在Drupal 7中,当写$时是不被喜欢的,
需要将其替换为jQuery,一切立刻就能正常工作。
我了解到原因是jQuery在 noConflict模式下工作
应该是类似这样的形式
jQuery(document).ready(function() {
setEqualHeight(jQuery(".container > div"));
});
所以到处的$都要替换为jQuery,这样就能幸福了。
希望这对某些人有用的信息。
前两个问题仍然悬而未决。