Вот "старый школьный" способ сделать его, который, надо надеяться, работает через все браузеры. В теории Вы использовали бы setAttribute
, к сожалению, IE6 последовательно не поддерживает ее.
var cssId = 'myCss'; // you could encode the css path itself to generate id..
if (!document.getElementById(cssId))
{
var head = document.getElementsByTagName('head')[0];
var link = document.createElement('link');
link.id = cssId;
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = 'http://website.com/css/stylesheet.css';
link.media = 'all';
head.appendChild(link);
}
Этот пример проверяет, был ли CSS уже добавлен так, он добавляет его только однажды.
Помещенный, что код в файл JavaScript, имейте конечного пользователя, просто включают JavaScript и удостоверяются, что путь CSS является полным, таким образом, он загружается из Ваших серверов.
Здесь является примером, который использует плоскость JavaScript для введения ссылки CSS в head
элемент на основе части имени файла URL:
Вводят код непосредственно перед закрытием head
, тег и CSS будут загружены, прежде чем страница представляется. Используя внешний JavaScript (.js
) файл заставит Flash нестилизованного содержания ( FOUC) появляться.
Ну, django - это открытый исходный код, поэтому, если вы хотите воспроизвести определенное поведение, вы можете прочитать код и выбрать то, что вам нравится. Например, вы можете видеть, что contrib.admin использует скрипт под названием urlify.js для выполнения динамических вставок с использованием чего-то вроде этого:
<script type="text/javascript" src="/admin-media/js/urlify.js"></script>
<script type="text/javascript">
document.getElementById("id_title").onkeyup = function() {
var e = document.getElementById("id_slug");
if (!e._changed) { e.value = URLify(document.getElementById("id_title").value, 50); }
}
</script>
... в зависимости, конечно, от того, где находится ваш административный носитель обслуживается из (мой из "/ admin-media /")
Или, если вы счастливы выполнить настройку slugify в своем представлении, вы можете использовать функцию, которая используется в django.template в качестве фильтра slugify: django.template.defaultfilters.slugify .