I'm using a breadcrumbs.js file.
function breadcrumbs(){
sURL = new String;
bits = new Object;
var x = 0;
var stop = 0;
var output = "";
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/a> | ";
}
document.write(output + document.title);
}
What it does is to traverse the folder structure and build it as a set of breadcrumbs. So for example:
/root
+ design-library
---+ foo
--------+ bar
------------+ baz name with space
And this would return as:
design-library | foo | bar | baz%20name%20with%20space | filename
How can I maintain the space in the file folder name, but return as:
design-library | foo | bar | baz name with space | filename
Use decodeURIComponent(str)
, which converts %xx
values back into single characters.