2011-05-09 33 views
0

我在某些域上嵌入了一個外部js文件,我需要在呈現腳本之前獲取其URL的當前位置以發送到服務器,而不是之後。我需要這個動態的,所以我不能讓用戶指定自己的網址。比如我有一個腳本:如何獲取當前窗口位置作爲參數發送給外部JS?

<script type="text/javascript" src="file.js?url=NEED THIS"></script>

我喜歡簡單的替換window.location.href需要這個,但可悲的是這是行不通的。主要的問題是,我需要獲取url並在服務器端解析它以生成內容文件.js將會傳遞,因此我需要將此url傳遞給file.js。我如何在不使用iframe的情況下實現這一目標?

+0

這會有幫助嗎? http://stackoverflow.com/questions/406192/how-to-get-the-current-url-in-jquery – csi 2011-05-09 03:29:57

+0

對不起,這不是我所需要的。 – Alex 2011-05-09 04:51:30

回答

0

使用JavaScript到document.write適當的腳本標記!

<script> 
    document.write('<scr'+'ipt src="file.js?url=' + encodeURIComponent(location.href) + '"></scr'+'ipt>'); 
</script> 

這樣做,這樣,您的用戶仍然可以簡單地通過將編寫的腳本代碼的網頁,而不是上述的指定自己的URL。

如果你不想要這個,你需要在你的JavaScript文件中檢查location.href

+0

嘿,這看起來好像可以工作,會做一些測試。我可以問你爲什麼分開' Alex 2011-05-09 04:51:06

+0

工作!萬分感謝! – Alex 2011-05-09 05:11:02

+0

通常,HTML解析器在找到結束標記''時停止解析腳本標記。我們需要將它們分開以防止瀏覽器執行此操作。無論如何,你應該再次檢查JS中的'location.href'。 – Thai 2011-05-09 12:06:14