#javascript #css #grails #gsp
#javascript #css #grails #gsp
Вопрос:
Я собираюсь использовать дизайн из niceform css (http://www.emblematiq.com/lab/niceforms/demo/v20/niceforms.html ) … в моем веб-приложении. В данный момент я использую grails 1.3.7.
Я обнаружил, что в niceform.js в нем есть переменная: var imagesPath = «../css/img/»;
кажется, мне нужно указать в нем правильный путь, у вас есть какие-нибудь идеи, как изменить этот путь с помощью grails? Я хотел бы иметь возможность использовать динамические ссылки, чтобы это могло: var imagesPath = «${grailsPath}/css / img /»;
Ответ №1:
Лично я бы поместил изображения в каталог niceform в каталоге изображений Grails. Затем поместите код .js в шаблон GSP
<g:javascript>
var imagesPath = "${resource(dir:'images/niceform')";
// rest of JS code here
</g:javascript>
Предполагая, что этот шаблон называется ‘_foo.gsp’, используйте <g:render template="foo"/>
там, где в противном случае вы бы включили файл .js.
Обновить
Если вы используете новый плагин resources (а вы должны им быть), используйте это вместо:
<r:script>
var imagesPath = "${resource(dir:'images/niceform')";
// rest of JS code here
</r:script>
Ответ №2:
Мои мысли:
- поместить niceform.js в свой проект и настройте его (и переименуйте в niceform.custom.js );
- направьте свои ресурсы, необходимые для niceform.js в imagesPath;
- определите глобальную переменную js imagesPath и используйте ее в файлах js (см. Пространства имен в javascript).
Ответ №3:
Попробуйте использовать ресурс, подобный этому: ${resource(dir:’css’,file:’main.css’)}