Pracuję z CMS, który uniemożliwia nam edytowanie sekcji head. Potrzebuję dodać arkusz stylów CSS do strony, zaraz po tagu. Czy istnieje sposób, aby to zrobić z JS, gdzie mogę dodać skrypt na dole strony (mam dostęp do skryptu tuż przed tagiem), który następnie wprowadziłby arkusz stylów do sekcji head?Dodaj arkusz stylów do nagłówka używając javascript w ciele
Odpowiedz
Aktualizacja : Zgodnie z specs, element link
nie jest dozwolony w treści. Jednak większość przeglądarek nadal będzie je dobrze renderować. Aby odpowiedzieć na pytania w komentarzach, naprawdę trzeba dodać link
do strony head
, a nie do body
.
function addCss(fileName) {
var head = document.head;
var link = document.createElement("link");
link.type = "text/css";
link.rel = "stylesheet";
link.href = fileName;
head.appendChild(link);
}
addCss('{my-url}');
Albo trochę łatwiej z jQuery
function addCss(fileName) {
var link = $("<link />",{
rel: "stylesheet",
type: "text/css",
href: fileName
})
$('head').append(link);
}
addCss("{my-url}");
Original odpowiedź:
Nie trzeba koniecznie dodać go do głowy, po prostu dodaj go do koniec tagu ciała.
$('body').append('<link rel="stylesheet" type="text/css" href="{url}">')
jak Juan Mendes wspomniano, można wstawić arkusz stylów do głowy zamiast
$('head').append('<link rel="stylesheet" type="text/css" href="{url}">')
i to samo bez jQuery (patrz kod powyżej)
Możesz użyć prawie tej samej rzeczy, aby dołączyć ją do głowy. –
@Juan Mendes, wiem, ale to co mówię to to, że po prostu można włożyć do ciała – vittore
Witaj vittore, dodałem drugi skrypt, o którym wspomniałeś przed tagiem
dosłownie kilka pytań dół: http://stackoverflow.com/questions/11833325/css-hack-adding-css-in-the-body -of-a-website – Kwon
jakiego używasz CMS? Zwykle jest co najmniej jakiś sposób na uwzględnienie ich w tym celu. –
Wewnętrzny lub zewnętrzny arkusz stylów? –