javascript
  • get
  • url-parameters
  • 2014-01-29 42 views 0 likes 
    0

    我的HTML塊如下,得到腳本源文件中的JavaScript URL參數HTML

    <html> 
    <title>Example</title> 
    <head> 
    </head> 
    <body> 
         <h2>Profile Photo</h2> 
        <div id="photo-container">Photo will load here</div> 
        <script type='text/javascript' src='http://example.com/js/coverphoto.js?name=johndoe'></script> 
    </body> 
    </html> 
    

    ,我已經保存此文件作爲test.html。在JavaScript源中,名稱將是動態的。 我想收集coverphoto.js中的名稱。試圖在coverphoto.js作爲,

    window.location.href.slice(window.location.href.indexOf('?') + 1).split('&') 
    

    但它只獲取html文件名(test.html)。如何從coverphoto.js中的http://example.com/js/coverphoto.js?name=johndoe獲取名稱密鑰?

    回答

    2

    爲了得到當前的JavaScript的URL文件,你可以使用一個事實,即它會在頁面上的最後一個<script>當前元素。

    var scripts = document.getElementsByTagName('script'); 
    var script = scripts[scripts.length - 1]; 
    var scriptURL = script.src; 
    

    請注意,此代碼將只有當它直接執行JS文件中,工作即不是文檔準備回調或任何事,那就是異步調用裏面。然後,您可以使用任何"get querystring parameter" JS(但請確保替換其中的任何location.search引用)以提取參數。

    我建議你把值在data-name說法雖然 - 這樣你可以簡單地使用例如script.getAttribute('data-name')以獲得價值。

    相關問題