javascript - 在哪里放置 JavaScript 配置函数?

标签 javascript jquery

对于将 javascript 代码包含在文件中而不是将其包含在脚本标记中,开发人员的一般意见是什么。

所以我们都同意 jquery 需要包含在脚本文件中,如下所示:

 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"
         type="text/javascript"></script>

我的问题是,为了在不在网站所有页面上的页面上获得功能。我们是在同一个页面中包含像下面这样的函数,还是在像上面这样名为 mysite.js 的全局包含文件中。

$(document).ready(function(){
$(".clickme").click(function(event){
  alert("Thanks for visiting!");
 });
});

好的。所以问题是:如果要在特定页面上的每个 class="clickme"中调用上面的代码,并且您可以从名为 mysite.js 的包含单独文件或在页。你会走哪条路?


参数是:

  • 如果您将它包含在页面上,您将只会从那些需要 js 功能的特定页面调用它。


编辑 1: 好的。我想确保人们解决的一点是,让 document.ready 函数调用页面中不存在的东西会产生什么影响,这会在浏览器上触发任何类型的延迟吗?这是一个重大影响吗?

最佳答案

首先 - $("#clickme") 会找到 id="clickme"而不是 class="clickme"。如果你正在寻找类(class),你会想要 $(".clickme")

我(尝试)从不在我的 XHTML 文档中放置任何实际的 JavaScript 代码,除非我正在快速测试页面上的某些内容。我总是链接到一个外部 JS 文件来加载我想要的功能。没有 JS 的浏览器(如网络爬虫)将不会加载这些文件,并且它使您的代码在“查看源代码”中看起来更加清晰。

如果我只需要一个页面上的一些功能 - 它有时会获得自己的包含文件。这完全取决于它使用了多少功能/慢速选择器。仅仅因为您将 JS 放在外部 JS 文件中并不意味着您需要在每个页面上都包含它。

我采用这种做法的主要原因 - 如果我需要更改一些 JavaScript 代码,它们将全部位于同一个位置,并在整个站点范围内进行更改。

就性能问题而言——有些选择器会花费很多时间,但大多数选择器(尤其是那些处理 ID 的选择器)都非常快。搜索一个不存在的选择器是浪费时间,但是当你把它与第二个脚本 HTTP 请求的浪费时间(这会阻止 DOM 准备好 btw)相比时,搜索一个空的选择器通常会获胜作为两害相权取其轻。 jQuery 1.3 Performace NotesSlickSpeed希望能帮助您确定您因搜索类(class)而真正损失了多少 MS。

关于javascript - 在哪里放置 JavaScript 配置函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1527730/

相关文章:

javascript - 如何在 native react 中显示两个 Firestore 集合中的数据

javascript - 如何获取 jquery 和模态窗口的按钮 ID?

javascript - 3D 变换格

javascript - 将加载 gif 添加到我的 loadmore jquery 按钮

c# - Accordion 选项卡在 dotnetnuke 中不起作用

javascript - 如何插入允许用户在开始时选择秒数的功能?

javascript - d3.csv : using specific row data to use in a for loop argument

javascript - 将 className 设置为映射元素中的特定状态

javascript - 如何将一个大网址变成一个带有附加参数的较小网址?

javascript - 在单独的 Div Jquery 中的倒数计时器时钟