gpt4 book ai didi

javascript - 使用 Zurb Foundation 和 Symfony2

转载 作者:行者123 更新时间:2023-11-29 18:23:57 27 4
gpt4 key购买 nike

在我的 Symfony2 应用程序中,我使用 Zurb Foundation 来构建我的布局。这一直让我头疼……css 工作得很好,但 js 经常不起作用。文件已加载且未报告任何错误(Zurb 的工作很好),但例如单击选项卡时没有任何反应。

我希望通过 Assetic 找到加载基础文件的错误。我没有使用任何过滤器,但我需要 Assetic 从 app\resources\public 加载文件。由于这是一个非 Web 文件夹,如果我直接加载这些文件,我会收到“禁止”错误。

你们把来自 Foundation 的全局 css 和 js 文件放在 Symfony2 应用程序的什么地方?在 bundle 中还是像我一样在公共(public)文件夹中?您对如何顺利运行有什么建议吗?

编辑: 似乎我的 Zurb Foundation js 根本没有工作...但是它加载时没有错误。如果存在的话,这方面的文档似乎也很少见。

最佳答案

“加载顺序”是答案...js 文件以错误的顺序读取并导致了问题。

这是解决方案:

链接到您的 js 库时,请确保您单独提及每个文件,以便确定顺序。接下来,last 链接到 app.js 文件。如果不这样做,将找到并正确加载所有文件,但 Zurb 基金会不会使用它们。如果您查看 app.js 文件,您会看到它加载库,并在特定时刻及时为每个未找到的库返回 null。

因此,不要像这样链接到您的 js 文件:

{% javascripts 
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/*'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}

这样做:

{% javascripts 
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.placeholder.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/modernizr.foundation.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/foundation.min.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.accordion.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.alerts.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.buttons.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.forms.js' '@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.mediaQueryToggle.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.navigation.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.topbar.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.reveal.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.tabs.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/jquery.foundation.tooltips.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/app.js'
'@UnknownblissZurbfoundationBundle/Resources/public/javascripts/*'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}

这样,决定加载顺序而不是 Symfony2。以通配符链接结尾仍然是一个明智的想法,这样您可能忘记的任何内容仍将被链接。

这样看起来使用 Assetic 的所有额外好处都被丢弃了,但您仍然拥有使用命名空间的优势,并且通过使用过滤器,您可以让 Assetic 将这些文件合二为一。这将限制所需的请求数量。所以唯一真正的缺点是需要额外的代码......

附言上面选择的顺序对我来说很好,但您可能想提出自己的顺序。

关于javascript - 使用 Zurb Foundation 和 Symfony2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15473624/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com