编辑导航规范

Web 站点导航根据站点结构和外观定义文件(“规范”页面)生成导航栏。“规范”页面是一个具有特别注释标记和表达式的 HTML 文件。
先决条件:
  1. 创建 Web 项目。
  2. 创建 Web 站点。
  3. 创建页面模板。
  4. 将页面模板应用于 Web 站点。
  5. 将导航添加至该页面模板。
可以通过编辑“规范”页面来修改导航。以下是 Web 站点导航和包括在该产品中的相关规范页面的列表:
Web 站点导航 规范页面(HTML 或 JSP)
水平条 horizontal-text

horizontal

horizontal-button

horizontal-sep

horizontal-tab

水平选项卡 horizontal-tab01

horizontal-tab02

horizontal-tab03

垂直条 vertical-text

vertical

vertical-button

vertical-sep

vertical-tab

垂直选项卡 vertical-tab01
导航轨迹 trail

trail_horizontal

trail_vertical

下拉菜单 dropdown
站点图 sitemap

sitemap_vertical

要修改导航规范:

  1. 要打开 Web 站点导航,请在“项目资源管理器”视图中展开 Web 项目,然后双击 Web 站点导航
  2. 右键单击导航元素并选择属性来打开“属性”视图。可以通过编辑不同属性选项卡中的信息来编辑导航规范。
  3. 如果要通过直接编辑规范代码来编辑导航规范,则单击“属性”视图中的规范选项卡。
  4. 单击打开以打开导航元素的规范页面。
  5. 编辑规范页面,然后按 Ctrl+S 键保存文件。
可以将规范页面指定为 siteedit:navbar、siteedit:navtrail、siteedit:navtab 和 siteedit:sitemap 标记的属性,这些标记是添加 Web 站点导航(例如,导航栏、导航轨迹、导航选项卡和站点图)时在 Web 页面中插入的标记。
以下是“规范”页面的示例:

<HTML>
<HEAD>
<TITLE>horizontal</TITLE>
</HEAD>
<BODY>
<TABLE border="0">
	<TBODY>
		<TR>
<!-- siteedit:forEach var="item" items="${sitenav.items}" begin="0" step="1" varStatus="status" -->
			<TD><A href="${item.href}"${item.label}</A></TD>
<!-- /siteedit:forEach -->
		</TR>
	</TBODY>
</TABLE>
</BODY>
</HTML>
可以通过编辑 siteedit:forEach 标记中的表达式来编辑该标记:
表达式 描述
${item.label} 呈现当前项表示的导航标签。
${item.href} 呈现当前项表示的上下文根相对 URL。
${item.ancestor} 如果当前项是当前页面的祖代,则为 true
${item.self} 如果当前项是当前页面,则为 true
${item.level} 来自导航根的级别数。
${item.first} 如果是 forEach 循环中的第一个循环,则为 true
${item.last} 如果是 forEach 循环中的最后一个循环,则为 true
${item.group} 如果当前项是组,则为 true
可以编辑条件运算符和逻辑运算符的表达式:
表达式 描述
${<<varName>> le n}
如果 item.level 等于或小于 n,则为 true
${<<varName>> lt n}
如果 item.level 小于 n,则为 true
${<<varName>> ge n}
如果 item.level 等于或大于 n,则为 true
${<<varName>> gt n}
如果 item.level 大于 n,则为 true
${<<varName1>> and <<varName2>>}
 
${<<varName1>> ir <<varName2>>}
 
${not <<varName2>>}
 
在上表中,其中 n 是数字,<<varName>> 是表达式中的变量。
可以通过编辑 siteedit:forEach 标记中的下列各个标记来编辑该标记:
标记用法 描述
<!--siteedit:if test="<<condition>>"-->
  <<content>>
<!--/siteedit:if-->
如果 <<condition>> 为 true,则输出将是 <<content>>
<!-- siteedit choose -->
  <!-- siteedit:when test="<<conditionA>>"-->
   <<contentA>>
  <!--/siteedit.when-->
  <!--siteedit.when test="<<conditionB>>"-->
   <<contentB>>
  <!--/siteedit.when-->
  <!--siteedit:otherwise-->
   <<contentO>>
  <!--/siteedit:otherwise-->
<!--/siteedit:choose-->
  • 如果 <<conditionA>> 为 true,则输出将是 <<contentA>>
  • 如果 <<conditionA>> 为 false 且 <<conditionB>> 为 true,则输出将是 <<contentB>>
  • 如果 <<conditionA>><<conditionB>> 都为 false,则输出将是 <<contentO>>
这类似于下列 C 编程语言的表达式:
if (conditionA) {contentA}
  else if (conditionB) {contentB}
  else {contentO}
<!--siteedit:forEach var="<<varName>>" begin="<<beginNum>>" end="<<endNum>>"-->
  <<content>>
<!--/siteedit:forEach-->
<<content>> 重复“<<endNum>> - <<beginNum>> + 1”次。
<!-- siteedit:set var="<<varName>>" value="<<expression>>" -->
<!-- /siteedit:set -->
<<expression>> 的结果设置为 <<varName>>。在下文中将此结果称为 ${varName}

反馈