Мне интересно, есть ли способ загрузить один лист less через некоторое время после загрузки страницы. У This question есть ответ, объясняющий, как перезагрузить все листы, но для моих существующих прецедентов листы никогда не имеют зависимостей от загруженных листов, и было бы неплохо добавить лист лениво. Я думаю что-то вродеless.js ленивая загрузка листа
less.sheets.push(mySheet);
less.loadStyleSheet(mySheet);
может представлять собой возможный API? Cheers,
Colin
UPDATE 3 декабрь 2010:
Я попробовал исправить Livingston Самуила в кодовом less.js, и в то время как он делает работу, как представляется, не признают определения в уже загруженные таблицы стилей. Вот мои примеры файлов
a. index.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Simple</title>
<link rel="stylesheet/less" href="/static/less/style.less" id="abc123"/>
<script src="/static/js/less-1.0.40.js"></script>
</head>
<body>
<div id="container">
<div>Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.</div>
</div>
<div id="abc"><div>Bingo</div></div>
</body>
<script>
console.log("loading new sheet");
less.loadStyleSheet("/static/less/style2.less", function() {
console.log("Loaded!");
});
console.log("called");
</script>
</html>
b. style.less
@primary_color: green;
.rounded(@radius: 5px) {
-moz-border-radius: @radius;
-webkit-border-radius: @radius;
border-radius: @radius;
}
#container {
background: @primary_color;
.rounded(5px);
div {
color: red;
}
}
c. style2.less
#abc {
background: @primary_color;
.rounded(10px);
div {
margin: 2px;
color: blue;
}
}
Так вторая таблица стилей делает нагрузку лениво, но он имеет следующие разборе ошибки в style2.less
".rounded неопределен"
.rounded определяется style.less , и поскольку я не выгружал этот лист, я думал, что он должен быть доступен компилятору в текущей среде.
Иными словами, мы не хотим запускать новые или выгружать существующие определения, а строить уже загруженные стили. Спасибо,
Colin
Для справки для других: less = http://lesscss.org/ – Orbling