我在网上发现了一个面包屑导航生成器。我已经包含了代码。它从标题中提取当前页面的信息。我不希望它从标题中拉出来,因为这会产生太长的痕迹。页面标题类似于页面名称 - 文件夹名称 - 我的公司。这是为了工作,所以我不能改变标题的格式。
我尝试在每个名为pageName的页面上定义一个变量,并在crumb代码中将title更改为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> » ";
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> » ";
}
document.write(output + document.title);
document.write("</div>");
}
答案 0 :(得分:0)
更改此行:
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
(如果存在),否则会回退到页面标题。