What does $(function() {} ); do?

$(function() { ... });

is just jQuery short-hand for

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

What it’s designed to do (amongst other things) is ensure that your function is called once all the DOM elements of the page are ready to be used.

However, I don’t think that’s the problem you’re having – can you clarify what you mean by ‘Somehow, some functions are cannot be called and I have to call those function inside’ ?
Maybe post some code to show what’s not working as expected ?

Edit: Re-reading your question, it could be that your function is running before the page has finished loaded, and therefore won’t execute properly; putting it in $(function) would indeed fix that!

Leave a Comment