比在JQuery中使用文档更好的方法

时间:2014-04-10 12:14:03

标签: javascript jquery

当我将监听器添加到下拉选项之类的内容时,例如。

$("select").change(function () {

或者当我加载页面时我想要完成某些事情,例如

$(".filter").each(function () {

(其中“filter”只是某些元素具有的类名)

我倾向于加入$(document).ready(function () {

有更好的方法(在设计方面)做这样的事情,我只是想要养成更好的习惯,或者任何人都可以向我推荐文章,其中详细讨论了像这样的主题。只是为了让自己更好。

2 个答案:

答案 0 :(得分:2)

你可以使用,

$(function () { }); 

作为document ready的备用广告。

答案 1 :(得分:2)

有更好的方法(在设计方面)做这样的事情吗?

在效率和保持本地JavaScript的范围方面,在设计方面还有其他方法。

IIFE(立即调用函数表达式)基于Greg Franko“jQuery Best Practices”

// IIFE - Immediately Invoked Function Expression

  (function(yourcode) {

    // The global jQuery object is passed as a parameter
    yourcode(window.jQuery, window, document);

  }(function($, window, document) {

    // The $ is now locally scoped 

   // Listen for the jQuery ready event on the document
   $(function() {

     // The DOM is ready!

   });

阅读更多here以及此答案:https://stackoverflow.com/a/18315393/2777098