簡體   English   中英

JavaScript:如何獲取絕對的基本URL?

[英]JavaScript: How to get an absolute Base-URL?

我想避免在我的HTML / PHP模板中使用JavaScript。 只要我在包含的外部JS文件中不需要基本/根URL,一切都可以正常工作。

問題 :是否有人知道將JS邏輯(下面的代碼)放入外部JS文件的解決方案? 主要問題:如何找出_BASE_URL_? 不幸的是,它不是一種可以通過操作屬性獲取URL的形式。 我不想編譯JS / PHP混合文件,它必須是純JS。

想法 (太臟了):在主體標簽頂部的隱藏輸入,其中包含id =“ root_url”或主JS文件中的變量:root_url =“ http:// localhost / projects / project / version /”。 這很容易失敗,因為沒有文件可以獨立工作。

也許有一個很好的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>

提前致謝!

我可以看看你的HTML結構嗎

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

如果您需要路徑,請使用此

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

我們可以這樣使用嗎

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


}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM