2011-10-12 3 views
1

나는 우리의 전체 사이트가 그 문제는 일부 페이지에 prettyPhoto가 정의되지 않은 점이다어떻게 prettyPhoto가 정의되어있는 경우 내가 확인 할

$("a[rel^='prettyPhoto']").prettyPhoto({ 
     theme: 'light_square', 
     showTitle: false, 
     allow_resize: true 
    }); 

를 사용하여 불을 지르고에서 오류가 발생 내 주요 JS 파일에있는이 조각을 가지고 그래서 내가이

if(typeof prettyPhoto=="undefined"){ 
    //do nothing 
}else{ 
    $("a[rel^='prettyPhoto']").prettyPhoto({ 
     theme: 'light_square', 
     showTitle: false, 
     allow_resize: true 
    }); 
} 

을 시도 할 것이라고 생각하지만 이것은 항상 심지어 prettyPhoto 사용할 수있는 페이지 ....

답변

9

이 시도 아이디어에, true로 실행 :

+0

을 할 경우에도 단지'할 수있는 경우 ($ .fn.prettyPhoto)', 조금 느슨한은 비록. – nrabinowitz

+0

$ .fn은 무엇입니까? $ .fn을 사용할 수 있습니까? 대부분의 jquery 요소를 사용할 수 있는지 확인하십시오. – Trace

+0

'$ .fn'은 모든 인스턴스 메소드가 정의 된 장소 인'$ ('p'와 같은 요소의 * collection *)에 사용되는 모든 jQuery 함수 프로토 타입입니다.()','$ ('p'). 각()', 등). – dfsq

0

prettyPhoto가있는 페이지에서 console.log (prettyPhoto)를 실행하면 무엇이라고 말합니까? 객체?

그렇다면, 당신은

if(typeof prettyPhoto === 'object'){ 
    //do your stuff here. 
} 
+2

실제로 dfsq가 올바르다 고 말한 내용 –

관련 문제