一个网页的地址是http://xxx.com/
然后用<script src="js/a.js"></script>调用a.js
而a.js又要通过
document.write("<script src="b.js"></script>");去调用b.js
a.js和b.js是同目录的,但是这么写肯定调用不到b.js
因为正确的地址是应该是js/b.js
请问有没有什么方法获取a.js被引用的地址,以那个作为base地址再引用b.js

解决方案 »

  1.   

    var href=document.location.href;
    var base=href.substr(0,href.lastIndexOf("/") + 1);
    alert(base);
      

  2.   


    但是这个不能够知道a.js和html页的位置关系啊。。
      

  3.   

    a.js 中用 document.write("<script src="/js/b.js"></script>");
      

  4.   

    第一个页面用<script src="./js/a.js"></script>调用a.js
    a.js通过
    document.write("<script src="../b.js"></script>");来调用b.js
      

  5.   

    或者是 document.write("<script src="../js/b.js"></script>");你试一下吧
      

  6.   

    我试了下,可以得到js文件的路径,但Firfox下没成功,并且实现方法也比较啰嗦,所以代码就不贴了我建议你还是用简单点的办法去实现吧大不了你在a.js里定义一个变量来存储a.js的存放路径,调用a.js的时候,必须将该变量设置正确
      

  7.   

    document.write("<script src="b.js"></script>");去调用b.js
    不能调到吗?