javascript - 为面包屑菜单定义变量?

标签 javascript breadcrumbs

我在网上找到了一个面包屑导航生成器。我已经包含了代码。它从标题中提取当前页面的信息。我不希望它从标题中消失,因为这会产生太长的痕迹。页面标题类似于页面名称 - 文件夹名称 - 我的公司。这是为了工作,所以我无法更改标题的格式。

我尝试在每个页面上定义一个名为 pageName 的变量,并在 crumb 代码中将标题更改为 pageName,但这似乎不起作用。

<script type="text/javascript">
var pageName= 'Name';
</script>

我将如何定义变量以使其起作用。或者只拉破折号之前的页面标题的第一部分?

function breadcrumbs(){
  sURL = new String;
  bits = new Object;
  var x = 0;
  var stop = 0;
  var output = "<div class=breadcrumbs><A HREF=/>Home</A> &nbsp;&raquo;&nbsp; ";

  sURL = location.href;
  sURL = sURL.slice(8,sURL.length);
  chunkStart = sURL.indexOf("/");
  sURL = sURL.slice(chunkStart+1,sURL.length)

while(!stop){
  chunkStart = sURL.indexOf("/");
  if (chunkStart != -1){
    bits[x] = sURL.slice(0,chunkStart)
    sURL = sURL.slice(chunkStart+1,sURL.length);
  }
  else{
    stop = 1;
  }
  x++;
}

for(var i in bits){
  output += "<A HREF=\"";
  for(y=1;y<x-i;y++){
    output += "../";
  }
  output += bits[i] + "/\">" + bits[i] + "</A> &nbsp;&raquo;&nbsp; ";
}
document.write(output + document.title);
    document.write("</div>");
}  

最佳答案

更改此行:

document.write(output + document.title);

致:

document.write(output + pageName);

这假设在该代码出现的每个页面上都定义了 pageName

您可以使用以下代码对此进行改进:

if (typeof pageName != 'undefined')
{
    document.write(output + pageName);
}
else
{
    document.write(output + document.title);
}

此代码将使用 pageName(如果存在),否则它将返回到页面标题。

关于javascript - 为面包屑菜单定义变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11831976/

相关文章:

javascript - jQuery 从列表结构构建面包屑导航链接

css - 如何将元素放在悬停 CSS 上?

css - 如何折叠标题中的文本,同时保持按钮右对齐?

javascript - 如何避免嵌套映射以从嵌套数组中获取我需要的值?

javascript - 图像加载 - 快速库

javascript - 从 Angular js中的另一个ng-app调用方法

javascript - jQuery datepicker 发布错误的日期值

.net - 是否可以使用 ASP.NET Sitemap 生成面包屑?

php - Joomla 面包屑显示 "Uncategorized"类别

javascript - console.log与数字的比较