日期:2014-05-16  浏览次数:20287 次

怎样判断href中是否存在多重目录?
本帖最后由 hougun 于 2014-02-24 15:55:12 编辑
我有个项目,通过点击左侧导航条,根据不同链接在右边<div id=col2parent>中载入相应内容。这一步已经做到了。但是右边显示的图片和链接不正确。
原因在于,导航条中的链接有些是存在于子目录中的,即有“/”分隔符,有的还不只一个。
我现在需要做到:
1、判断是否有“/”分隔符;
2、有分隔符的,要把该目录地址分离出来,添加到右边区域的src 和 href前面,让图片和链接正常显示。

请高手帮帮忙啊!

<script type="text/javascript">
$('#subnav div a').each(function() {   //左边导航条的点击事件
    this.onclick = function() {
      $('#col2parent').load(this.href+ ' #col2');  //col2parent中装入内容,来自于不同htm文件的col2

         //if里面的代码没有运行成功,需要各位帮帮忙,谢谢!
  if (this.href.indexOf('/') > 0)   //用javascript的方法判断是否存在分隔符
  {
  var adds = this.href.split('/')[0];
  $( "#col2 img").attr("src",function( i, val ) {return adds+val;});
  $( "#col2 a").attr("href",function( i, val ) {return adds+val;});
  }
  return false;
    };
  });
</script>
------解决方案--------------------
$( "#col2 img").attr("src",adds+'/'+$( "#col2 img").attr('src'));
   $( "#col2 a").attr("href",adds+'/'+$( "#col2 img").attr('href'));

------解决方案--------------------
引用:
谢谢两位,但我发现 if (this.href.indexOf('/') > 0) 这里都没有执行下去,可能有错误。 能帮我分析下吗


注意:当第一个字符为/时,indexOf的返回值为0,不满足条件,所以应该是
indexOf('/')>-1

------解决方案--------------------
1.先用把href里的 http:// 去掉 再做判断
2.这个功能要根据具体的业务做 判断。。。  这个要协商好的吧