首页 > 解决方案 > 重新加载脚本文件是一个好习惯吗?

问题描述

我正在使用typeahead.js可用于向 HTML 输入框添加自动完成功能的插件。

因此,如果您加载脚本并执行

<input class="typeahead" type="text" id="partNumberInput" aria-describedby="enter Part Number" placeholder="Part Number"> 

该脚本将使用该类查找所有 DOM 元素typeahead并添加一堆父元素并执行一些其他有助于提供自动完成功能的事情。

现在,我想使用带有typeahead. 由于typeahead仅在页面开始加载时运行一次,因此它不会执行我之前提到的所有内容。

这是每次用户单击按钮以添加另一个带typeahead类的输入框时我重新加载脚本的场景吗?

标签: javascripthtmltypeahead.js

解决方案


示例中的第一个示例显示了如何在页面中的任何元素上调用 typeahead。

您可以使用所需的任何类在目标元素上调用 typeahead,而不是依赖于将特定类放在元素上以便 typeahead 检测到它们。

例如,如果您有一个全新的元素,您可以动态地放入 DOM 中,并且它具有 class whatever,那么您可以通过执行以下操作在该元素上加载 typeahead:

$('.whatever').typeahead({
  // your options here
}, {
  // more options here, see examples
})

您可能想重新加载脚本标签本身;这可能会对您的应用程序产生意想不到的(可能有害的)影响。

通常,表单$('.whatever').typeahead(...)是您通常调用任何 jQuery 插件的方式,以便使用该插件对选择器指定的元素进行操作。


推荐阅读