I'm using some jQuery on a web page that detects which menu option is current, when to display the mobile menu, etc. - I'm pretty much just experimenting with what is possible at the minute. When I visit the page on a desktop PC, the code works fine, and my mobile menu and tabs load immediately when clicked.
When I view the page on a mobile device (S5, Android) the loading times for the menu to show, the tabs to change, etc. take a few seconds, as opposed to immediately. I'm not too sure whether this is down to the efficiency of my code, or if I shouldn't be using particular functions or anything. Any ideas on what could be causing this delay?
$(document).ready(function() {
    function getParam(name) {
        name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
        var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
            results = regex.exec(location.search);
        return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
    }
    var sortElement = currentSort(getParam('sort'));
    var itemElement = currentItem(getParam('items'));
    $(sortElement.element).addClass('current');
    $(itemElement.element).addClass('current');
    function currentSort(value) {
        var strElement;
        switch(value) {
            case 'newest' :
                strElement = '#newest';
            break;
            case 'oldest' :
                strElement = '#oldest';
            break;
            case 'alph_desc' :
                strElement = '#desc';
            break;
            case 'alph_asc' :
                strElement = '#asc';
            break;
            case '' :
                strElement = '#newest';
            break;
        } return {
            element: strElement
        }
    }
        function currentItem(value) {
        var strElement;
        switch(value) {
            case '10' :
                strElement = '#fewer';
            break;
            case '15' :
                strElement = '#few';
            break;
            case '50' :
                strElement = '#more';
            break;
            case '' :
                strElement = '#few';
            break;
        } return {
            element: strElement
        }
    }
    $('#search a').click(function() {
        $('#search').html('<form><input class="nav-search" placeholder="Search" type="text" name="search-query"/><input type="submit" value=" "/></form>');
    });
    function checkWidth() {
        var windowSize = $(window).width();
        if (windowSize < 1020) {
            $('.navigation .container').html('<ul><li class="brand mobile"><a href="/products"></a></li><li class="menu"></li><div class="mobile-menu"><ul><li><a href="/products"><div class="icon product"></div>Products</a></li><!----><li><a href="/personalise"><div class="icon personalise"></div>Personalise</a></li><!----><li id="search"><a><div class="icon search"></div>Search</a></li><!----><li><a href="/basket"><div class="icon basket"></div>Basket</a></li></ul></div></ul>');
            $('.mobile-menu').hide();
            $('.menu').click(function() {
                $('.mobile-menu').slideToggle();
            });
        } else {
            $('.navigation .container').html('<ul><li><a href="/products"><div class="icon product"></div>Products</a></li><!----><li><a href="/personalise"><div class="icon personalise"></div>Personalise</a></li><!----><li class="brand"><a href="/products"></a></li><!----><li id="search"><a><div class="icon search"></div>Search</a></li><!----><li><a href="/basket"><div class="icon basket"></div>Basket</a></li></ul>');
        }
    }
    checkWidth();
    $(window).resize(checkWidth);
});
 
     
    