Подтвердить что ты не робот

Рекомендации по декларированию функций внутри функции jquery ready

Я не нашел хорошую ссылку для объявления своих собственных функций внутри

jquery.ready(function(){});

Я хочу объявить их, чтобы они находились в одном и том же объеме готового закрытия. Я не хочу загромождать глобальное пространство имен js, поэтому я не хочу, чтобы они объявлялись вне готового закрытия, потому что они будут специфичны только для кода внутри.

Итак, как объявить такую ​​функцию... и я не имею в виду пользовательский метод/функцию расширения jquery... просто регулярная функция ol, которая делает что-то тривиальное, например:

function multiple( a, b ){ 
    return a * b; 
}

Я хочу следить за рекомендацией jquery и синтаксисом объявления функции. Я могу заставить его работать, просто объявив функцию, как умножить одну выше... но по какой-то причине она не выглядит корректной, поэтому я думаю, мне просто нужно руководство.

4b9b3361

Ответ 1

Я считаю, что вам будет хорошо объявить функцию внутри закрытия ready(), но здесь вы можете быть более явным в области локального охвата:

jQuery.ready(function() {

     var myFunc = function() {

           // do some stuff here

     };

     myFunc();


});

Ответ 2

Это может показаться простым, но вы просто... объявите функцию. Javascript позволяет функциям иметь внутренние функции.

$(document).ready( function() {
   alert("hello! document is ready!");

   function multiply(a, b) {
       return a * b;
   }

   alert("3 times 5 is " + multiply(3, 5));
});

Ответ 3

У меня есть функция StartUp, и я использую ее как напечатанный ниже:

function StartUp(runnable)
{
    $(document).ready(runnable.run);
}

var ExternalLinks =
{
    run: function()
    {
        $('a[rel="external"]').bind('click', ExternalLinks.click);
    },
    click: function(event)
    {
        open(this.href);
        return false;
    }
}
StartUp(ExternalLinks);

var ConfirmLinks =
{
    run: function()
    {
        $('a.confirm').bind('click', ConfirmLinks.click);
    },
    click: function(event)
    {
        if (!confirm(this.title)) {
            return false;
        }
    }
}
StartUp(ConfirmLinks);

Мои веб-сайты являются модульными, поэтому каждый модуль имеет N действий, и каждое действие может иметь .js файл, поэтому я просто пишу функцию и вызываю ее с помощью StartUp (... functionName...)