2014-03-31 67 views
2

我目前一直在尋找以下內容:不同的CSS提供iframe

if (window.top!=window.self) { 
    <link rel="stylesheet" href="http://www.website.com/content/themes/theme/style.css" type="text/css" /> 
} else { 
    <link rel="stylesheet" href="http://www.website.com/content/themes/theme/iframe.css" type="text/css" /> 
} 

我要添加鏈接的文件,所以當它加載在網站上的styles.css將加載,當在一幀它會加載frame.css我做錯了什麼?

+1

你與HTML混合JS。 – eithed

+0

您正在將JavaScript與HTML混合使用。 – rupps

+0

@rupps,你是我的雙胞胎嗎? – eithed

回答

1

您正在將JavaScript與HTML混合使用。這就是爲什麼你會得到語法錯誤。

你需要使用一個函數,will load a CSS file

function loadCSSFile (filename) { 
     var fileref = document.createElement("link"); 
     fileref.setAttribute("rel", "stylesheet"); 
     fileref.setAttribute("type", "text/css"); 
     fileref.setAttribute("href", filename); 
     if (typeof fileref != "undefined"); 
     document.getElementsByTagName("head")[0].appendChild(fileref) 
} 

或者使用jQuery:

function loadCSSFile (filename) { 
    $("<link>", { 
     rel: "stylesheet" 
     , type: "text/css" 
     , href: filename 
    }).appendTo("head"); 
} 

然後,你會做什麼:

if (window.top!=window.self) { 
    loadCSSFile("http://www.website.com/content/themes/theme/style.css"); 
} else { 
    loadCSSFile("http://www.website.com/content/themes/theme/iframe.css"); 
} 
+0

如果這是在WordPress的網站,我在哪裏把JavaScript的jQuery任何想法?我猜if語句將在頁眉上? – user3348182

+0

@ user3348182在這種情況下真的沒關係。只需使用''標籤包裝代碼,它應該可以工作。 –

+0

我害怕我無法得到這個工作它會很簡單我只是可能做錯了我需要加載這個在文件的一部分,它不加載任何CSS文件,甚至不是原來的:/任何幫助? – user3348182