2013-10-10 2 views
1

У меня есть следующий бит кода jQuery, который я хочу повторно использовать, вызвав его из других частей моего кода jQuery. Как я могу это сделать?Как назвать и повторно использовать функцию javascript

$(document).ready(function() {    
    $('#share_mention').charcount({ 
     maxLength: 140, 
     preventOverage: false 
    }); 

    $('.countable').bind('update', function(evt, length, remaining) { 
     var message = 'id=' + $(evt.target).attr('id') + ', length=' + length + ', remaining=' + remaining;     
    }); 
}); 

ответ

5

Существует много способов кожи этой кошки, но вот подход.

var yourNameSpace = {}; 

yourNameSpace.YourFunction = function(){ 
    $('#share_mention').charcount({ 
    maxLength: 140, 
    preventOverage: false 
    }); 

    $('.countable').bind('update', function(evt, length, remaining) { 
    var message = 'id=' + $(evt.target).attr('id') + ', length=' + length + ', remaining=' + remaining;     
    }); 
} 

$(document).ready(function() { 
    yourNameSpace.YourFunction() 
}); 
+0

Немного короче способ написания, что последняя строка будет '$ (документ) .ready (yourNameSpace.YourFunction);' –

+1

@JoeEnos Да, при условии, что это единственное, что вы хотите сделать на DOM Ready является эта функция. – marteljn

+0

Спасибо. Ценить это. – grabury

0

Прежде всего, нет функции типа jQuery. Это функция javascript. Событие неявно передается функции обратного вызова.

function countCats (event) {} 

$('.cats').on('click', countCats); 
Смежные вопросы