jquery中如何处理缺失元素

发布于 2024-09-14 22:40:55 字数 653 浏览 7 评论 0原文

对于具有中等数量 javascript(以 jQuery 的方式)的中型应用程序,将 javascript 组合到单个文件中同时避免对缺失元素进行操作的最佳方法是什么?

例如,给定 html:

<html>
  <head><title>Foobar</title></head>
  <body>
     <div id='foo'>Bar</div>
  </body>
</html>

和以下 javascript

$(document).ready(function() {
  // This will get bound
  $('#foo').click(function() { alert('foobar'); });

  // This will not get bound
  $('#bar').click(function() { alert('foobar'); });
});

授予上述两个绑定相对无害,但对于复杂的行为,尝试绑定到不存在的元素会导致性能下降吗?如果是这样,您如何平衡将 javascript 保存在单个文件中(以减少 http 请求)与可维护、高性能的 jQuery?

For a medium sized app with a medium amount of javascript (in the way of jQuery), what's the best way to combine the javascript into a single file while also avoiding acting on absent elements?

For example, given the html:

<html>
  <head><title>Foobar</title></head>
  <body>
     <div id='foo'>Bar</div>
  </body>
</html>

And the following javascript

$(document).ready(function() {
  // This will get bound
  $('#foo').click(function() { alert('foobar'); });

  // This will not get bound
  $('#bar').click(function() { alert('foobar'); });
});

Granted both of the above bindings are relatively innocuous, but for complex behaviors, will attempting to bind to absent elements cause a performance hit? If so, how do you balance keeping your javascript in a single file (to decrease http requests) with maintainable, performant jQuery?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

走过海棠暮 2024-09-21 22:40:56

找不到某个元素的成本与找到该元素的成本基本相同。

所以这可能不会导致性能下降。

The cost of not finding an element is basically the same of finding it.

So probably this won't cause a performance hit.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文