Greenscript CDN在Play Framework 1.2.5上的回退

时间:2013-05-23 13:23:55

标签: playframework cdn google-cdn greenscript

我正在使用Play! 1.2.5和Greenscript 1.2.8b。我希望有一个jQuery和其他JavaScript库的后备,如果一个CDN没有响应。

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script>window.jQuery || document.write('<script src="@{'public/javascripts/jquery-1.7.2.min.js'}">\x3C/script>')</script>

这很好用但是有没有办法用Greenscript做到这一点?

我试图用greenscript做同样的事情,但是依赖于jQuery的其他脚本会同时加载并且会破坏网站:

#{greenscript.js 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js' } window.jQuery || document.write('<script src="@{'public/javascripts/jquery-1.7.2.min.js'}">\x3C/script>') #{/greenscript.js}

有这样的事情会很棒:

js.default=https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js || jquery-1.7.2.min

1 个答案:

答案 0 :(得分:1)

您的要求不太可能实现,因为greenscript在解析标记时不会测试网络连接,因为很可能在预编译时互联网不可用。

我建议您使用<script>标记而不是greenscript为您的案例加载jquery。

BTW,1.2.8b是一个过时的版本。由于playframework不接受模块更新,因此您应该按照https://gist.github.com/greenlaw110/2868365更新您的greenscript版本。