【问题标题】:Grouping plugin initializations and functions into a single script将插件初始化和函数分组到一个脚本中
【发布时间】:2014-11-18 10:47:42
【问题描述】:

我有一个非常基本的问题,关于将 (jQuery) 插件初始化(实际上是任何类型的脚本)分组到整个网站的单个脚本中:在我的模板中,我通常有一个“tools.js”文件,其中包括各种插件初始化,点击功能等。为了方便、整洁和服务器请求的数量,我喜欢将这些函数/脚本调用集中在一个文件中,但是,在某些页面上,各种脚本将不适用——比如 fitvids.js 脚本初始化可以在带有视频的一个页面上使用,而不是在另一个页面上使用。因此,我想知道这是否有任何问题,即如果某个库未包含在给定页面上,这是否会产生问题 - 但它是初始化 is - 或引用的选择器给定页面上不存在点击功能?

感谢您在这里提供任何见解。

【问题讨论】:

    标签: javascript jquery optimization jquery-plugins


    【解决方案1】:

    在我的设计中,我只会在页面之间共享插件定义或常用实用程序方法等共享代码。每个页面的事件处理程序或插件初始化等功能代码将保持独立。

    如果在多个页面中存在横切关注点,那么它将被转换为插件或实用方法,将放置在共享文件中,但实际使用将分别针对每个页面完成。

    【讨论】:

    • 谢谢阿伦——虽然说会产生任何你能想到的问题吗?如果调用了插件初始化并且底层库不存在怎么办?这会中断/干扰页面上其他脚本的功能吗?
    • @nickpish 如果一切顺利,它不会产生任何问题......但是假设明天你想在特定的事件处理程序中进行一些更改......这将是一场测试噩梦,因为你不'不知道其他页面使用它
    【解决方案2】:

    如果选择器不存在于 DOM 中并且在 js 中有点击处理程序,那应该不是问题。背后的原因是 click 函数永远不会被触发。如果附加的处理程序被偶然执行并且js找不到您的选择器,这是一个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-27
      • 1970-01-01
      • 2019-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多