php - 我应该如何将一些 javascript 集成到 php 应用程序中?

标签 php javascript yui integration smarty

我有一个中型遗留 php 应用程序,几乎没有集成 javascript。我最近一直在使用 Douglas Crockfords excellent book 学习 javascript(是的,实际上是在学习它)并拍摄了YUI作为我选择的图书馆。我已经尝试了一些东西并取得了一些效果,但现在我想将各种组件等正确地集成到我的应用程序中,我的问题是如何着手这样做以便于维护和代码重用。

目前应用程序包括

  • php 页面
  • 用于页面每个部分的智能模板(带有一些特殊模板标记的 html 模板),因此多个模板可以用于单个页面。
  • 单个 CSS 文件。

关于如何将我的 javascript 集成到页面中,我有以下想法。

  1. 在每个 smarty 模板中使用该部分所需的代码编写内联 javascript。
  2. 编写一个单独的 .js 文件以与链接的每个 smarty 模板一起使用,然后编写一个内联脚本来运行它。
  3. 每个 php 页面都有一个单独的 .js 文件,它具有整个 .php 页面所需的所有功能。一个小的内联函数将调用所需的任何函数。
  4. 我还没有想到的东西?

这有什么意义吗?有人对此有什么好的建议吗?

更新:

一个额外的信息是它是一个内部应用程序,因此将所有内容限制在一个文件中并不是那么重要。

最佳答案

另外两个选项:

  1. 包含整个网站所有 JS 的单个 JS 文件。根据您的缓存设置,您应该能够让用户为整个站点只下载一个文件,并为所有其他页面使用缓存版本。
  2. 根据功能而不是页面划分您的 JS,并包含每个页面需要的任何功能。例如。一个页面可能需要标签、表单验证和动画,而另一个页面可能只需要标签。

或者您可以混合使用这些文件:一个包含绝大部分代码的 JS 文件和一个额外的文件(如果特定页面或模板需要)。

所提到的方法都不是错误的(尽管我会尽可能跳过内联 JS 方法);哪一个最好取决于您的具体情况和您的个人喜好。

关于php - 我应该如何将一些 javascript 集成到 php 应用程序中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3894451/

相关文章:

javascript - 如何通过从 javascript 函数的 <td> 调用 jquery 函数来基于类别加载子类别以动态添加行?

php - WordPress 按日期获取用户返回空列表

javascript - 意外的等待/异步行为

javascript - firebase - 使用 key 获取子数据库引用

javascript - YUI 附加正文后,在 ('click' 上)甚至不起作用

javascript - myHandler 函数如何工作?

javascript - 用于检查 Javascript 对象是否为 html 元素的跨浏览器解决方案

php - 检测一个单元格中的单个或多个单词

php - JSON 形式的网站导航树 - 这是不好的做法吗?

php - Unirest Node 模块无法从PHP获取POST数据