我有一个基于groovy和Grails(grails版本2.0.4)的应用程序。我;使用grails jQuery -plugin
如果我尝试这样的话,请在gsp页面中
<script type="text/javascript">
$(document).ready(function() {
alert($);
});
</script>
让我在控制台中出错了
Uncaught ReferenceError: $ is not defined list:24
(anonymous function)
但如果我尝试这样的话
<r:script>
$(document).ready(function() {
alert($);
});
</r:script>
它按预期发出警告。
grails jQuery插件安装jquery版本1.7.1
是什么导致此行为/错误?
当我看到页面源时,我发现在脚本标记
之后加载了jQuery如何解决?
我的main.gsp页面
<!doctype html>
<!--[if lt IE 7 ]> <html lang="en" class="no-js ie6"> <![endif]-->
<!--[if IE 7 ]> <html lang="en" class="no-js ie7"> <![endif]-->
<!--[if IE 8 ]> <html lang="en" class="no-js ie8"> <![endif]-->
<!--[if IE 9 ]> <html lang="en" class="no-js ie9"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--> <html lang="en" class="no-js"><!--<![endif]-->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<r:require modules="jquery"/>
<title><g:layoutTitle default="Grails"/></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="${resource(dir: 'images', file: 'favicon.ico')}" type="image/x-icon">
<link rel="apple-touch-icon" href="${resource(dir: 'images', file: 'apple-touch-icon.png')}">
<link rel="apple-touch-icon" sizes="114x114" href="${resource(dir: 'images', file: 'apple-touch-icon-retina.png')}">
<link rel="stylesheet" href="${resource(dir: 'css', file: 'main.css')}" type="text/css">
<link rel="stylesheet" href="${resource(dir: 'css', file: 'mobile.css')}" type="text/css">
<g:layoutHead/>
<g:javascript library="jquery"/>
<r:require module="application"/>
<r:layoutResources />
</head>
<body>
<div id="spinner" class="spinner" style="display:none;"><g:message code="spinner.alt" default="Loading…"/></div>
<div class="page_header">
<g:render template="/templates/header" />
</div>
<div class="container">
<div class="left_column">
<g:render template="/templates/commonMenu" />
</div>
<div class="center">
<g:layoutBody />
</div>
</div>
<div class="footer">
<g:render template="/templates/footer" />
</div>
</body>
</html>
答案 0 :(得分:1)
首先检查Grails Resourses插件的文档,了解它的工作原理以及如何使用它。 使用脚本标记时,它将呈现在定义的位置。但是如果你使用r:script,那么它将在页面末尾的所有模块(包括jQuery)之后呈现(通常)。