Помимо прочего, она предназначена для того, чтобы ваша функция вызывалась, когда все элементы DOM страницы готовы к использованию.
Однако я не думаю, что это проблема, с которой вы столкнулись - можете ли вы уточнить, что вы подразумеваете под «Каким-то образом некоторые функции не могут быть вызваны, и я должен вызывать эти функции внутри»? Может быть, опубликовать код, чтобы показать, что не работает, как ожидалось?
Изменить: Перечитывая ваш вопрос, возможно, ваша функция работает до того, как страница закончила загружаться, и поэтому не будет работать должным образом; помещение его в $ (функция) действительно исправит это!
что если $ (function () {}); уже в $ (документ) .ready ()?
jwchang
функция не работает без $ (function (), хотя она уже в $ (document) ready ().
jwchang
Хороший вопрос! Я считаю, что это должно сработать, поскольку jQuery знает, что вы находитесь в правильном месте, но это, конечно, посторонний; если вы внутри .ready (), вы можете просто вызывать свою функцию как обычно. Если это не работает, тогда опубликуйте образец или, что еще лучше, попробуйте сделать скрипку как jsfiddle.net.
Расс Кларк
4
@JeongWooChang Сделай это так (function () { ... })();. Вы должны добавить, ()чтобы вызвать вашу функцию.
Шиме Видас
3
«Опытные разработчики иногда используют сокращение $()для $( document ).ready(). Если вы пишете код, который могут увидеть люди, не имеющие опыта работы с jQuery, лучше использовать длинную форму». - learn.jquery.com
thdoan
15
Ниже приведен вызов функции jQuery:
$(...);
Который является «функцией jQuery». $это функция, и $(...)вы вызываете эту функцию.
Первый указанный вами параметр является следующим:
function(){}
Параметр - это указанная вами функция, и $функция вызовет предоставленный метод, когда DOM завершит загрузку.
Это просто сокращение для $(document).ready(), как: $(document).ready(function() {
YOUR_CODE_HERE
});. Иногда вам нужно использовать его, потому что ваша функция работает до того, как DOM завершит загрузку.
Я думаю, что вы можете путать Javascript с методами jQuery. Ваниль или простой Javascript - это что-то вроде:
function example(){}
Функция такого рода может быть вызвана в любое время и в любом месте.
jQuery (библиотека, построенная на Javascript) имеет встроенные функции, которые обычно требуют полной визуализации DOM перед вызовом. Синтаксис для этого:
$(document).ready(function(){});
Таким образом, функция jQuery с префиксом $или словом jQueryобычно вызывается из этого метода.
$(document).ready(function(){// Assign all list items on the page to be the color red. // This does not work until AFTER the entire DOM is "ready", hence the $(document).ready()
$('li').css('color','red');});
Псевдокод для этого блока:
Когда объектная модель документа $(document)готова .ready(), вызовите следующую функцию function() { }. В этой функции проверьте все <li>на странице $('li')и, используя метод jQuery .CSS (), установите для свойства CSS «color» значение «red»..css('color', 'red');
Это ярлык для $(document).ready(), который выполняется, когда браузер завершил загрузку страницы (здесь означает «когда DOM доступен»). См. Http://www.learningjquery.com/2006/09/introduction-document-ready . Если вы пытаетесь позвонить example()до того, как браузер завершит загрузку страницы, он может не работать.
(function () { ... })();
. Вы должны добавить,()
чтобы вызвать вашу функцию.$()
для$( document ).ready()
. Если вы пишете код, который могут увидеть люди, не имеющие опыта работы с jQuery, лучше использовать длинную форму». - learn.jquery.comНиже приведен вызов функции jQuery:
Который является «функцией jQuery».
$
это функция, и$(...)
вы вызываете эту функцию.Первый указанный вами параметр является следующим:
Параметр - это указанная вами функция, и
$
функция вызовет предоставленный метод, когда DOM завершит загрузку.источник
Это просто сокращение для
$(document).ready()
, как:$(document).ready(function() { YOUR_CODE_HERE });
. Иногда вам нужно использовать его, потому что ваша функция работает до того, как DOM завершит загрузку.Все объясняется здесь: http://docs.jquery.com/Tutorials:Introduction_$ (документ) .ready ()
источник
Я думаю, что вы можете путать Javascript с методами jQuery. Ваниль или простой Javascript - это что-то вроде:
Функция такого рода может быть вызвана в любое время и в любом месте.
jQuery (библиотека, построенная на Javascript) имеет встроенные функции, которые обычно требуют полной визуализации DOM перед вызовом. Синтаксис для этого:
Таким образом, функция jQuery с префиксом
$
или словомjQuery
обычно вызывается из этого метода.Псевдокод для этого блока:
Когда объектная модель документа
$(document)
готова.ready()
, вызовите следующую функциюfunction() { }
. В этой функции проверьте все<li>
на странице$('li')
и, используя метод jQuery .CSS (), установите для свойства CSS «color» значение «red»..css('color', 'red');
источник
Это ярлык для
$(document).ready()
, который выполняется, когда браузер завершил загрузку страницы (здесь означает «когда DOM доступен»). См. Http://www.learningjquery.com/2006/09/introduction-document-ready . Если вы пытаетесь позвонитьexample()
до того, как браузер завершит загрузку страницы, он может не работать.источник