如何检查 PrettyPhoto 是否已定义

发布于 2024-12-09 16:11:50 字数 522 浏览 0 评论 0原文

我的主js文件中有这个片段,我们整个网站都使用

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

该片段,问题是在某些页面上prettyPhoto未定义并导致firebug中出现错误,所以我想我会尝试这个,

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

但这总是执行为true,即使在页面上漂亮的照片可用......任何想法

I have this snippet that is on my main js file that our entire site uses

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

that problem is that on some pages prettyPhoto is undefined and causes an error in firebug so i thought i would try this

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

but this always executes to true, even on pages that prettyPhoto is available....any ideas

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

淡水深流 2024-12-16 16:11:50

试试这个:

if (typeof $.fn.prettyPhoto == "function") {
    // we have prettyPhone on the page
}

Try this:

if (typeof $.fn.prettyPhoto == "function") {
    // we have prettyPhone on the page
}
悲欢浪云 2024-12-16 16:11:50

如果你在一个你知道有 PrettyPhoto 的页面上执行 console.log(prettyPhoto) ,它会说什么?一个物体?

如果是这样,那么你就这样做

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

if you do a console.log(prettyPhoto) on a page that you know has prettyPhoto, what does it say it is? an object?

If so, then you do

if(typeof prettyPhoto === 'object'){
    //do your stuff here.
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文