如何訪問和更改標記的屬性,特別是src? 這樣的東西可能是:訪問並更改<script>標記的屬性
document.scripts[i].src
當然,它不工作! 我打算改變這樣說:
document.scripts[i].src += '?ver3'
在一個循環中爲頁面上的所有腳本。
如何訪問和更改標記的屬性,特別是src? 這樣的東西可能是:訪問並更改<script>標記的屬性
document.scripts[i].src
當然,它不工作! 我打算改變這樣說:
document.scripts[i].src += '?ver3'
在一個循環中爲頁面上的所有腳本。
你可以使用document.getElementsByTagName('script')
得到在頁面中的所有腳本元素。
但是,您發現的任何腳本元素都已經加載了它們的內容,因此要更改它們用於加載內容的URL將會太遲。
如果你想改變URL,你應該在服務器端使用一個解決方案,以便URL到達瀏覽器時被改變。
反正做客戶端?我的意思是應該是什麼? Firefox插件,一些代理服務器(本地)? – z403
使用jQuery:
jQuery("script").each(function(){
var old_src = jQuery(this).attr('src');
jQuery(this).attr('src', old_src+'?ver3');
})
具有良好的老JS:
var scripts = document.getElementsByTagName('script');
for (var i=0; i<scripts.length; i++){
var old_src = scripts[i].getAttribute('src');
scripts[i].setAttribute('src', old_src +'?ver3');
}
它不適合我。正如Guffa所說,你不能改變加載腳本的內容。您可以更改「src」屬性,但不會加載新腳本。 – 2011-08-08 10:12:19
安裝httpd(Apache)和PHP。 把你的hosts文件(或HOSTS.TXT)這一行:
127.0.0.1 example.com
編寫一個名爲index.php的一個PHP腳本,放入服務器目錄(/ var/www/html等或一些類似這樣的;取決於組態)。
當您在瀏覽器中加載http://example.com
你會被重定向到127.0.0.1
(本地服務器)和PHP這個變量$_SERVER["HTTP_HOST"]
將被設置爲example.com
。
得到這個網站(例如使用cURL),改變你想要的(使用字符串函數,正則表達式,DOMDocument,SimpleXML等),併發送修改後的內容給瀏覽器。
就是這樣。 :)
這聽起來很困難,容易出現問題。你最終的目標是什麼?你想要做什麼? –
這是爲了避免瀏覽器緩存?如果是這樣,我認爲這是一個比這更好的解決方案 – Curt
你真的不想混淆腳本標記中的'scr'屬性。即使你不能「卸載」腳本,我想大多數瀏覽器至少會再次傳輸/加載腳本。 – jAndy