我正在为我的系统构建一个小型CSS美化器,仅在CSS处于特定顺序时才会构建。 这个想法是将CSS转储到textarea中,然后由应用程序生成代码的有序版本。 我设法做到了,但前提是粘贴在textarea中的代码没有属性。
例如:
content
margin
font-size
会工作。
但是如果它是带有属性的正确代码:
content: 'test';
margin: 10px;
font-size: 1em;
那么就不会。
我认为失败的是比较函数只会将字符串视为完整字符串,而不是部分字符串。
这是比较函数和a JS Bin。
$scope.customOrder = function (item) {
switch (item) {
case 'display':
return 1;
case 'flex':
return 2;
case 'flex-basis':
return 3;
case 'flex-direction':
return 4;
...
}
};
关于如何解决此问题的任何想法?
答案 0 :(得分:1)
在switch
之前,解析属性名称,如下所示:
$scope.customOrder = function (item) {
var parsedItem = item.substr(0, item.indexOf(':'));
switch (parsedItem) {
case 'display':
return 1;
case 'flex':
return 2;
...