【问题标题】:JavaScript: How to get an absolute Base-URL?JavaScript:如何获取绝对的基本 URL?
【发布时间】:2012-10-23 17:49:55
【问题描述】:

我想在我的 HTML/PHP 模板中避免使用 JavaScript。只要我的外部(包括 JS 文件)中不需要基本/根 URL,一切正常。

问题: 有人知道将 JS 逻辑(下面的代码)放入外部 JS 文件的解决方案吗?主要问题:如何找出_BASE_URL_?不幸的是,它不是一种可以通过操作属性获取 URL 的形式。我不想编译JS/PHP混合文件,它必须是纯JS。

想法(太脏了):body-tag 顶部的隐藏输入,id="root_url" 或主 JS 文件中的变量:root_url = "http://localhost /项目/项目/版本/”。这很容易失败,因为没有文件可以独立运行。

也许有一个好的 htaccess/mod_rewrite 解决方案?

注意:我不想获取主机名或“真正的”根目录,因为它也必须在子文件夹中工作!

代码

<script type="text/javascript">
// document ready
$(function() {
    // function: load items
    function load_items() {
        $("#items").load("<?php echo _BASE_URL_?>/items.php");
    }

    // load items!
    load_items();
});
</script>

<!-- target div --> 
<div id="items">loading</div>

提前致谢!

【问题讨论】:

    标签: php javascript jquery html templates


    【解决方案1】:

    我可以看看你的 html 结构吗

    function getBaseURL () {
       return location.protocol + "//" + location.hostname + (location.port && ":" + location.port) + "/";
    }
    

    如果你需要一个路径也使用这个

    path = window.location.pathname.split( '/' );
    console.log(path);
    

    【讨论】:

    【解决方案2】:

    我们可以这样使用吗

    function getBaseURL () {
        return location.protocol + "//" + location.hostname + location.pathname;
    
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-26
      • 2011-02-02
      • 2014-02-10
      • 2014-10-01
      • 1970-01-01
      • 2021-05-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多