2009-07-27 4 views
1

У меня есть метод, написанный на JavaScript, скажем, 'callme', и у меня есть код jQuery, написанный внутри блока $ (document.ready).Вызов методов jQuery из функций Javascript

Мой вопрос в том, как вызвать существующий метод JavaScript «callme» из блока jQuery.

Предполагаемый список выглядит следующим образом,

function callme(){ 
    // do some complex processing. I don't want to do this in jQuery 
} 

$(document).ready(function(){ 
    // I need to call callme function from here. 
}); 

Пожалуйста, помогите мне.

+3

Вы действительно попытались разместить «callme» внутри $ (document) .ready? Я понятия не имею, почему это не сработает, так как это очень простое программирование ... – linusthe3rd

+0

Не должно ли это быть чем-то вроде «Вызов функций JavaScript из методов jQuery»? – montrealist

+0

также "" $ (document) .ready (function() {...}) '" эквивалентно (и чаще всего написано как) "' $ (function() {...}) '" – Kip

ответ

9

$ (document) .ready (function() {callme()});

4

Возможно, стоит упомянуть, что имеется также доступная клавиша; просто $(callme);.

+0

Я не думаю, что ОП знает, куда поставить такой звонок. –

2

Может быть легче читать (это для меня, когда вещи становятся более сложными), но точно такой же ответ, как Дэйв:

$(document).ready(function() 
{ 
    ... 
    callme(); 
    ... 
}); 
3

Ничего особенного, что нужно сделать. Вызов $ (document) .ready() - это просто функция, поэтому вы можете свободно называть свои другие функции там.

Помните, jQuery по-прежнему javascript. Все просто проходит через функцию jQuery для обработки всех настраиваемых методов и т. Д. Все, что вы можете сделать в javascript, вы можете сделать в jQuery.

0

Почему бы не просто сделать следующее?

$(function(){ 
    // Do your processing here 
}); 

Вы действительно не нужно, чтобы создать определенную функцию с именем, если, конечно, вы не собираетесь выполнить его несколько раз после загрузки страницы.

Также, что вы подразумеваете под «сложной обработкой»? JavaScript не многопоточен, поэтому одна функция может выполняться одновременно. Если ваша «сложная обработка» занимает много времени, страница перестает отвечать на запросы до тех пор, пока она не завершится.