我对javascript文件有一些奇怪的问题。当我在我的html文件中使用它时,只需在脚本标签中编写它,它就可以正常工作。但是当我把它包括在内时
<script type="text/javascript" src="{{ asset('bundles/[my bundle]/js/login.js') }}"></script>,
它不再起作用了。知道为什么吗?
有代码,即使我不认为它来自此。
$(document).ready(function(){
var container = $(".login");
$('#lol').click(function(){
$( ".login_background" ).fadeToggle( "700", "linear" );
$( ".login" ).fadeToggle( "700", "linear" );
$.ajax({
url: '{{ path('fos_user_security_login') }}',
success: function(response){
$('.login_header_full').html(response)
}
});
});
$(".login_close").click(function(){
container.hide();
$(".login_background").hide();
});
$(document).mouseup(function (e)
{
var container = $(".login");
if (!container.is(e.target)
&& container.has(e.target).length === 0)
{
$( ".login" ).fadeToggle( "700", "linear" );
$( ".login_background" ).fadeToggle( "700", "linear" );
}
});
$(".login_background").hide();
});
答案 0 :(得分:0)
在我看来,您的javascript文件的文件位置不是您的script
标记所指向的位置。如果您没有使用Assetic或类似的东西,那么您的js文件必须位于web
目录中。因此,在您的情况下,将您的文件放在
{SymfonyRoot}/web/.../login.js
例如,您可以创建一个web/js
目录,然后您的代码将是这样的:
<script type="text/javascript" src="{{ asset('js/login.js') }}"></script>
或者,如果您想保留在问题中发布的路径,那么您的login.js文件必须位于
{SymfonyRoot}/web/bundles/[myBundle]/js/login.js
这将允许您使用此脚本位置:
<script type="text/javascript" src="{{ asset('bundles/[my bundle]/js/login.js') }}"></script>
请记住,您的web
目录是您的DocumentRoot,因此如果您希望能够在您的网站上访问它们,则所有公共文件都必须位于此目录中。