Pergunta

estou tentando usar a API prettyPhoto, mas o firebug diz que $.prettyPhoto.open() não é uma função e não funciona ...

CÓDIGO:http://jsbin.com/ihuje3/3/edit

$(document).ready(function(){
     $.prettyPhoto.open('http://www.microdual.com/assets/images/newsletters/doublehosting.jpg','Test','Test desc');
});
​
Foi útil?

Solução

Você precisa configurar o prettyPhoto primeiro (por causa de como o plugin foi escrito, infelizmente), assim:

$(document).ready(function(){
  $.fn.prettyPhoto(); //usually $("a[rel^='prettyPhoto']").prettyPhoto();
  $.prettyPhoto.open('http://www.microdual.com/assets/images/newsletters/doublehosting.jpg','Test','Test desc');
});

Você pode ver na fonte que funciona como $.prettyPhoto.open() são definidos executando `$.

O outro problema é que o plugin parece ter um problema com o contexto do chamador introduzido no jQuery 1.4.4, funciona bem com 1.4.3 (você pode testar aqui). Isso foi relatado nos fóruns, espero que o autor aborde isso em breve.​

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top