嗨Umbraco用户,
我目前正在建立我的第一个umbraco网站,因为我对umbraco完全不熟悉,我已经遇到了一个问题,我确信这个问题非常简单。
也就是说,在构建使用Joomla的(开源)CMS上运行的网站时,我绝不是初学者!因为它被称为曼波。
无论如何,我正在建设的网站在这里:my site
我想要做的是在鼠标悬停/悬停其中一个菜单项时,白色框中有一些内容会发生变化。当你点击一个链接时,内容必须保持“活跃”(即如果你点击“个人资料”我需要突出显示灰色的配置文件菜单项,白色框内容需要是相关的内容到配置文件菜单项。
我该如何解决这个问题?在网站上展示多个内容时,最佳做法是什么?我看过有关多个Content Place Holders的视频,但我从来没有真正开始工作。我无法在NavigationPlaceHolder(我放在白框中的占位符)中显示一个页面,但那是因为实际页面是Frontpage.aspx而不是WhateverIsInThenavigationPlaceHolder.aspx。如果我去mysite.dk/WhateverIsInNavigationPlaceHolder.aspx,它显示正常。
我错过了什么? :)
提前致谢!如果我的问题在某些方面不明确,请告诉我,我会尝试更好地解释它。
一切顺利,
博
答案 0 :(得分:0)
你看到你的实现时会有点混乱,但这里有一个关于我可能做的事情:
我非常确定您要创建一个用户控件来添加到您的页面模板,而不是尝试通过模板系统执行此操作。 (将它作为宏添加到模板中。)我将使用和XSLT控制此处作为基本输出:
<xsl:variable name="subContentNodes" select="$currentPage/node[@nodeTypeAlias='yourContentNodeType']">
<ul id="content-items-nav">
<xsl:for-each select="$subContentNodes">
<li><a href="#subnode-{@id}"><xsl:value-of select="data[@alias='pageBody']" disable-output-escaping="yes" /></a></li>
</xsl:for-each>
</ul>
然后再
<div id="content-items">
<xsl:for-each select="$subContentNodes">
<div id="subnode-{@id}"><xsl:value-of select="data[@alias='pageBody']" disable-output-escaping="yes" /></div>
</xsl:for-each>
</div>
看起来你已经在你的页面上包含了jQuery,所以我会添加一个脚本来处理点击:
$("#content-items-nav a").bind("click", function(e) {
e.preventDefault();
var contentDiv = $(this).attr('href');
$("#content-items div").hide();
$(contentDiv).show();
$(this).addClass("active");
});
希望能帮到你一些。我发现umbraco有一个学习曲线,但是当你进入umbraco时它会非常强大。
(注意:我没有检查任何代码的语法)