0

该部分是 foo.com/agriculture。它有一个与 javascript 中的名称相对应的横幅图像。我需要内部页面 foo.com/agriculture/harvest 有一个单独的横幅,而不是 foo.com/agriculture。我正在使用的用于每个页面的横幅交换的脚本如下:

<script type="text/javascript"> 
var dir = location.pathname.split("/")[1]; 
//var dir2 = location.pathname;
if (dir == "agriculture")        
document.write('<IMG SRC="/images/ib_agriculture.jpg" WIDTH=1024 HEIGHT=91 BORDER=0>')  
else if (dir == "showcase")
document.write('<IMG SRC="/images/ib_show.jpg" WIDTH=1024 HEIGHT=91 BORDER=0>')  
else if (dir == "contact")      
document.write('<IMG SRC="/images/ib_contact.jpg" WIDTH=1024 HEIGHT=91 BORDER=0>')   
else if (dir == "distribution")     
</script>

我尝试了以下不同的代码来尝试为内部页面 foo.com/agriculture/harvest 分配一个单独的横幅。

var dir = location.pathname.split("/")[1]; 
//var dir2 = location.pathname;
if (dir == "agriculture/harvest")        
document.write('<IMG SRC="/images/ib_agriculture_harvest.jpg" WIDTH=1024 HEIGHT=91 BORDER=0>')  
else if (dir == "showcase") 

var dir = location.pathname.split("/")[1]; 
//var dir2 = location.pathname;
if (dir == "harvest")        
document.write('<IMG SRC="/images/ib_agriculture_harvest.jpg" WIDTH=1024 HEIGHT=91 BORDER=0>')  
else if (dir == "showcase") 

上面的两个脚本继续抓取 foo.com/agriculture 横幅 (ib_agriculture.jpg) 而不是调用的 foo.com/agriculture/harvest (ib_agriculture_harvest.jpg)。我不确定如何让脚本每页调用适当的横幅。

4

1 回答 1

0

当你调用 pathname.split 时,你会得到一个这样的数组:

["foo.com", "agriculture", "harvest"]

然后,您将索引为 1 的项目放入dir变量中:

var dir = location.pathname.split("/")[1]

所以 的值dir是“农业”,即使“收获”也是 url 的一部分。要检查该字符串,您需要使用location.pathname.split("/")[2].

或者你可以这样做:

var parts = location.pathname.split("/");
var dir = parts[1]; 
if (parts.length > 2)
{
     dir += "/" + parts[2];
}
if (dir == "agriculture/harvest")        
     document.write('<IMG SRC="/images/ib_agriculture_harvest.jpg" WIDTH=1024 HEIGHT=91 BORDER=0>')  
于 2012-11-13T19:30:14.380 回答