我需要帮助,
根据URL的第一个目录,我想在我的页面上显示一个图像。
示例:
此URL中的将显示image1.jpg
其他任何一个中的都将显示image2.jpg
目前,只有当url是第一个目录时,在内部目录或文档中才能显示图像。
这就是我现在使用的脚本:
<script type="text/javascript">
switch (location.pathname)
{
case "/audio/":
document.write("From Web<BR>")
break
case "/video/":
document.write('<A HREF="slides.htm" target="_blank"><IMG SRC="/adman/banners/joinvip.gif" WIDTH=728 HEIGHT=90 BORDER=0></A>')
break
default:
document.write('<A HREF="http://www.apple.com" target="_blank"><IMG SRC="http://www.amd.com/us-en/assets/content_type/DownloadableAssets/NEW_PIB_728x90.gif" WIDTH=728 HEIGHT=90 BORDER=0></A>')
break
}
</script>谢谢
发布于 2010-03-08 00:16:17
试试这个:
var dir = location.pathname.split("/")[1];
if (dir == "audio")
document.write("From Web<BR>")
else if (dir == "video")
document.write('<A HREF="slides.htm" target="_blank"><IMG SRC="/adman/banners/joinvip.gif" WIDTH=728 HEIGHT=90 BORDER=0></A>')
else
document.write('<A HREF="http://www.apple.com" target="_blank"><IMG SRC="http://www.amd.com/us-en/assets/content_type/DownloadableAssets/NEW_PIB_728x90.gif" WIDTH=728 HEIGHT=90 BORDER=0></A>');这将将路径名拆分为目录数组,当前文件名位于数组的末尾。第一个目录将是数组中的第一个项,并设置为dir变量。与SLaks提供的regex方法不同(顺便说一句,regex方法也适用于您),该方法不使用多个正则表达式(如果有多个正则表达式,就会降低性能),而且该方法也将在不太可能的情况下正确工作,因为/video/目录包含/音频/子目录,而这在regex测试中很难实现。类似于SLaks的回答,我用if替换了您的switch,因为if语句通常更适合这类事情。
发布于 2010-03-07 19:10:58
你可以写
if (/\/audio\//.test(location.pathname))
document.write("From Web<BR>");
else if (/\/video\//.test(location.pathname))
document.write('<A HREF="slides.htm" target="_blank"><IMG SRC="/adman/banners/joinvip.gif" WIDTH=728 HEIGHT=90 BORDER=0></A>')
else
document.write('<A HREF="http://www.apple.com" target="_blank"><IMG SRC="http://www.amd.com/us-en/assets/content_type/DownloadableAssets/NEW_PIB_728x90.gif" WIDTH=728 HEIGHT=90 BORDER=0></A>');https://stackoverflow.com/questions/2397522
复制相似问题