0
這是問題所在。我正在嘗試打印日曆。我必須加載一些CSS,但所有的CSS鏈接都有這樣的絕對路徑/path/to/css.css
。因此,如果我只是打開窗口:打開一個保留與父窗口相同位置的空白窗口
var win = open('', '_blank')
win.document.write(htmlContent)
這將正確繪製HTML,但它不會加載CSS,因爲它沒有指向正確的主機名。
之後更改位置將創建一個重定向,因此它不是一個真正的解決方案。
我能達到我想要這個:
function open_calendar(content) {
var win = open(window.location, 'Calendar')
win.addEventListener('load', function() {
win.document.write(content)
})
return win
}
的窗口中打開同一個位置,在加載頁面的時候,那麼它改變了內容,以我想要的東西。結果是它仍然使用相同的位置並允許我繪製自定義的html。缺點是我必須加載可能需要一些時間的頁面......我想知道是否有一個不太方便的方式來實現相同的結果。
那麼,爲什麼你要加載這樣的CSS?而不是絕對路徑? – putvande
另一種選擇是使用window.location.hostname將當前服務器捕獲到一個var,並將連接值傳遞到您的css路徑中(如果需要,使用字符串替換) – happymacarts