在一个文件中组合多个jQuery Scipts /功能

时间:2019-01-23 15:21:30

标签: javascript jquery

我通常将我的jquery函数组合在一个文件/文档中。最近,我下载了一个主题,我看到了一些代码,但我不明白为什么它在那里。我担心

if (!!$.prototype.scrollUp) {
    $.scrollUp();
} 

部分。有人可以告诉我为什么在几个地方都有吗?没有它不行吗?

"use strict";

$(document).ready(function () {
    /* Video Lightbox */
    if (!!$.prototype.simpleLightboxVideo) {
        $('.video').simpleLightboxVideo();
    }

    /*ScrollUp*/
    if (!!$.prototype.scrollUp) {
        $.scrollUp();
    }

    /*Responsive Navigation*/
    $("#nav-mobile").html($("#nav-main").html());
    $("#nav-trigger span").on("click",function() {
        if ($("nav#nav-mobile ul").hasClass("expanded")) {
            $("nav#nav-mobile ul.expanded").removeClass("expanded").slideUp(250);
            $(this).removeClass("open");
        } else {
            $("nav#nav-mobile ul").addClass("expanded").slideDown(250);
            $(this).addClass("open");
        }
    });

    $("#nav-mobile").html($("#nav-main").html());
    $("#nav-mobile ul a").on("click",function() {
        if ($("nav#nav-mobile ul").hasClass("expanded")) {
            $("nav#nav-mobile ul.expanded").removeClass("expanded").slideUp(250);
            $("#nav-trigger span").removeClass("open");
        }
    });

    /* Sticky Navigation */
    if (!!$.prototype.stickyNavbar) {
        $('#header').stickyNavbar();
    }

    $('#content').waypoint(function (direction) {
        if (direction === 'down') {
            $('#header').addClass('nav-solid fadeInDown');
        }
        else {
            $('#header').removeClass('nav-solid fadeInDown');
        }
    });

});

1 个答案:

答案 0 :(得分:0)

这些是为了防止在不存在这些元素/引用的页面上出现空指针异常。就像@Taplar所评论的那样,您的页面很可能在没有它们的情况下也可以工作,但是控制台可能会出现一些警告或错误。