有没有办法为YepNope.js的脚本提供动态名称?

时间:2012-09-05 12:54:04

标签: javascript jquery css yepnope

我目前正在使用YepNope.js来加载我的css / javascript文件。我想知道在初始过程中是否有任何方法可以为脚本提供变量名称。例如:

yepnope({
    test : Modernizr.csstransforms,
    yep  : ['MyCSS', 'jQuery']
    nope : ['MyCSS2']
});

// Where 'MyCSS' = '/css/mycss.css' | 'jQuery' = '/scripts/jquery.min.js' 
// 'MyCSS2' = '/css/mycss2.css

我有一个开发团队,他们都会使用相同的脚本集,并希望尽可能简单地处理。必须跟踪脚本路径可能比简单的名称分配耗费时间。

我希望能够定义一个变量名称列表,这些变量名称具有分配给它们的实际脚本的值,YepNope.js将解释它们,而开发人员不必将变量赋值添加到项目代码中:

{ 'MyCSS': '/css/mycss.css', 'jQuery', '/scripts/jquery.min.js' }

这样,当开发人员将他们的脚本文件添加到他们的项目时,他们不必追踪指定文件的所有路径。

1 个答案:

答案 0 :(得分:1)

这是你需要的吗?

var yeps = ['/css/mycss.css','/scripts/jquery.min.js'];
var nopes = ['/css/mycss2.css'];

yepnope({
    test : Modernizr.csstransforms,
    yep  : yeps,
    nope : nopes
});

var myCSSpath= '/css/mycss.css',
    jQpath = '/scripts/jquery.min.js',
    myCSS2path = '/css/mycss2.css';

yepnope({
    test : Modernizr.csstransforms,
    yep  : [myCSSpath, jQpath],
    nope : [myCSS2path]
});

编辑:所以你想把变量赋值放到另一个文件中吗?

制作一个yepnope.variables.js

<script src="path/yepnope.js"></script>
<script src="path/yepnope.variables.js"></script>

<script>
yepnope({
    test : Modernizr.csstransforms,
    yep  : [myCSSpath, jQpath],
    nope : [myCSS2path]
});
</script>

并在js文件中:

var myCSSpath= '/css/mycss.css',
    jQpath = '/scripts/jquery.min.js',
    myCSS2path = '/css/mycss2.css';