Четыре вопроса о nettuts «30 дней на изучение jquery»

Я провожу бесплатный курс jQuery на nettuts под названием «30 дней для изучения jquery» Джеффри Уэя, и у меня есть четыре вещи, которые меня действительно озадачивают, во-первых, вот код:

(function() {
    $('html').addClass('js');

    var contactForm = {
            container: $('#contact'),

        init: function() {
            $('<button></button>', {
                text: 'Contact Me'
            })
               .insertAfter('article:first-child   ')
               .on('click', this.show);
            },
        show: function() {
            contactForm.container.slideDown(500);
        }                       
    };

    contactForm.init(); 

})();

По сути, он скользит вниз по контактной форме, когда вы нажимаете кнопку «Связаться со мной» на веб-сайте. Мои вопросы:

  1. В чем смысл "init" и нужен ли он вам?
  2. почему весь код jquery находится внутри переменной?
  3. в строке кода, которая говорит .on('click', this.show);, зачем вам thisв this.show?
  4. наконец, зачем вам contactForm.container.slideDown(500);, например, почему вы не можете просто сказать container.slideDown(500);или$('form.contact').slideDown(500);(Кстати, идентификатор формы, которая скользит вниз, contact.
7
задан Kyle Trauberman 16 July 2012 в 23:30
поделиться