CakePHP元素-如何放置javascript?

CakePHP元素-如何放置javascript?,cakephp,elements,Cakephp,Elements,我刚刚开始使用cakephp元素,它们非常棒(我曾经使用include) 我有一个元素库和一个名为comments的元素(对于某个页面),对于它们,我有一些javascript代码附加到这两个元素上。对于如何在元素中包含javascript代码,您有什么建议吗?如果我简单地添加它,它将在加载元素后的html之前加载javascript,我认为这不是很明智。您可以将javascript代码直接放入元素文件,或者将javascript代码放入您的webroot文件夹,/app/webroot/js/

我刚刚开始使用cakephp元素,它们非常棒(我曾经使用include)


我有一个元素库和一个名为comments的元素(对于某个页面),对于它们,我有一些javascript代码附加到这两个元素上。对于如何在元素中包含javascript代码,您有什么建议吗?如果我简单地添加它,它将在加载元素后的html之前加载javascript,我认为这不是很明智。

您可以将javascript代码直接放入元素文件,或者将javascript代码放入您的webroot文件夹,
/app/webroot/js/
并使用HTML帮助程序将文件包含在布局中:

 echo $html->script("myCode");

如果您担心Javascript代码在页面完全加载之前执行,请使用或使用JQuery。

您可以将Javascript代码直接放入元素文件,或将Javascript代码放入webroot文件夹,
/app/webroot/js/
并使用HTML帮助程序将文件包含在布局中:

 echo $html->script("myCode");

如果您担心Javascript代码在页面完全加载之前执行,那么使用JQuery或JQuery。

如果我理解正确,您希望在调用某个元素时,在页眉中有特定于页面加载的JS,但每个元素的JS可能不同。您还希望在HTML文档的开头引用JS

这其实很容易做到。只需确保您使用的布局中有
标记

然后,在元素中,只需执行以下操作:

<?php $this->Html->script("js_file", array("inline"=>false)); ?>

js_file是app/webroot/js/中JavaScript文件的名称。在本例中,该文件将被称为js_file.js,但在如上所述引用它时,必须去掉.js


在元素文件中的什么位置放置它并不重要,因为
“inline”=>false部分确保它实际上不会出现在代码的那个阶段。相反,它将出现在布局中放置的
位置的
中。

如果我理解正确,您希望在调用某个元素时在标题中加载特定于页面的JS,但每个元素的JS可能不同。您还希望在HTML文档的开头引用JS

这其实很容易做到。只需确保您使用的布局中有
标记

然后,在元素中,只需执行以下操作:

<?php $this->Html->script("js_file", array("inline"=>false)); ?>

js_file是app/webroot/js/中JavaScript文件的名称。在本例中,该文件将被称为js_file.js,但在如上所述引用它时,必须去掉.js


在元素文件中的什么位置放置它并不重要,因为
“inline”=>false部分确保它实际上不会出现在代码的那个阶段。相反,它将出现在布局中的
中。

在CakePHP3中,而不是
数组('inline'=>false)
如果有人像我一样寻找答案,你应该使用
数组('block'=>true)

在CakePHP3中,而不是
数组('inline'=>false)
如果有人像我一样寻找答案,你应该使用
array('block'=>true)

我不知道新版本的CakePHP是否有变化,但在2.5版中,它不喜欢有3个参数。它只适用于2<代码>
@Carlos是的,你完全正确。事实上,即使是2.4似乎也只需要2个参数。我已经对其进行了编辑,以使其与当前版本保持最新。我不知道CakePHP的较新版本是否有更改,但在版本2.5中,它不喜欢有3个参数。它只适用于2<代码>
@Carlos是的,你完全正确。事实上,即使是2.4似乎也只需要2个参数。我对其进行了编辑,使其与当前版本保持最新。