【问题标题】:Is this a good method to initialise fast click?这是初始化快速点击的好方法吗?
【发布时间】:2015-04-10 13:42:15
【问题描述】:

我试图保持我的 html 干净,因此通过我的 app.js 文件需要库 / 插件,所有 javascript / jquery 逻辑都发生在该文件中。我正在使用 FastClick 库来省略 300 毫秒的点击延迟并以这种方式进行初始化。

jQuery(document).ready(function ($) {
    'use strict';

    /* Load and initialize FastClick, ommits 300ms tap delay */
    $.getScript('lib/fastclick.js', function () {
        new FastClick(document.body);
    }); /* END FastClick */

}); /* END jQuery */

这是否具有语义意义,使用它而不是在 html 页面中添加 fastclick.js 文件是否会更有害?

【问题讨论】:

  • 您的方法没有问题,但是您要等到 DOM 准备好后再下载库。

标签: javascript jquery fastclick.js


【解决方案1】:

它具有语义意义,从fastclick docs 来看,它看起来没有害处。

在您的 JavaScript 包中包含 fastclick.js 或将其添加到您的 HTML 页面...

他们说将其作为连接文件或独立文件包含在内是安全的。您可以随意添加 FastClick 源代码。

他们的文档确实使 FastClick 的初始化变得复杂。 document.documentElement 属性在 JavaScript 开始执行时可用,它表示 <html> 元素。这可以用作 FastClick 的根元素,无需 DOMContentLoaded 或 domready 事件处理程序:

new FastClick(document.documentElement);

不需要事件处理程序。现在,您可以根据需要在页面加载时以及在完整的 HTML 文档被解析之前响应点击。

编辑:@jungy 在他的评论中提出了一个很好的观点:

...您正在等待 DOM 准备好再下载库。

完整的代码示例:

jQuery.getScript("lib/fastclick.js", function() {
    new FastClick(document.documentElement);
});

【讨论】:

    猜你喜欢
    • 2011-01-26
    • 2011-05-30
    • 2018-04-05
    • 1970-01-01
    • 2015-08-14
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    • 2023-03-09
    相关资源
    最近更新 更多