1 |
|
2 |
|
3 |
|
4 | define('seajs/plugin-less', ['./plugin-base', 'less'], function(require) {
|
5 |
|
6 | var plugin = require('./plugin-base')
|
7 | var less = require('less')
|
8 |
|
9 |
|
10 | plugin.add({
|
11 | name: 'less',
|
12 |
|
13 | ext: ['.less'],
|
14 |
|
15 | fetch: function(url, callback) {
|
16 | less.Parser.importer(url, [], function(e, tree) {
|
17 | createCSS(tree.toCSS(), url.replace(/[^\w]/g, '_'))
|
18 | callback()
|
19 | }, {})
|
20 | }
|
21 | })
|
22 |
|
23 |
|
24 | function createCSS(cssText, id) {
|
25 | var elem = document.getElementById(id)
|
26 | if (elem) return
|
27 |
|
28 | elem = document.createElement('style')
|
29 | elem.id = id
|
30 | document.getElementsByTagName('head')[0].appendChild(elem)
|
31 |
|
32 | if (elem.styleSheet) {
|
33 | elem.styleSheet.cssText = cssText
|
34 | } else {
|
35 | elem.appendChild(document.createTextNode(cssText))
|
36 | }
|
37 | }
|
38 |
|
39 | });
|
40 |
|