Este problema acontece normalmente quando temos um arquivo global de funções e esquecemos de referenciar os plugins utilizados nele.
Erros comuns:
- Esquecer de referenciar o plugin na página.
- Errar a URL do plugin.
- Carregar as funções antes do plugin.
Então para evitar os erros como fancybox is not a function, datepicker is not a function, tooltip, tabs, lightBox... Basta verificar se ele existe ou se foi referenciado antes de tentar utilizá-lo. Veja dois exemplos de como fazer isso.
jQuery prototype - antes de utilizar fancybox, por exemplo.:
if (!!$.prototype.fancybox )
{
$("#fancybox").fancybox();
}
JavaScript function - antes de chamar uma função JavaScript
if ( typeof qualquerfuncao == 'function' ) {
qualquerfuncao();
}