怎样判断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'));
------解决方案--------------------
注意:当第一个字符为/时,indexOf的返回值为0,不满足条件,所以应该是
indexOf('/')>-1
------解决方案--------------------1.先用把href里的 http:// 去掉 再做判断
2.这个功能要根据具体的业务做 判断。。。 这个要协商好的吧