Developing Apps for Wearable Devices

Published on October 9, 2024

After reading this article, you’ll: Grasp the current landscape of wearable technology, including various device…

Read More

Preparing Your App for Seasonal Traffic Spikes

Published on September 21, 2024

After reading this article, you’ll: Understand the importance of seasonal traffic patterns in mobile app…

Read More

The ROI of Custom Mobile App Development for Businesses

Published on September 12, 2024

After reading this article, you’ll: Understand the potential ROI of custom mobile app development, including…

Read More

How to Ensure Your Company’s Mobile App Meets Privacy Regulations (GDPR, CCPA, etc.)

Published on August 31, 2024

After reading this article, you’ll: Understand the importance of privacy regulations like GDPR and CCPA…

Read More

Integrating Mobile Apps with Emerging Payment Technologies

Published on August 22, 2024

After reading this article, you’ll: Gain insight into the evolution of mobile payment technologies, including…

Read More

The Importance of Intuitive Navigation in Mobile App Design

Published on August 13, 2024

After reading this article, you’ll: Understand the critical importance of intuitive navigation in mobile app…

Read More

Developing Enterprise Apps for Remote Work Environments

Published on August 5, 2024

After reading this article, you’ll: Understand the impact of remote work on enterprise technology, particularly…

Read More

Optimizing App Performance and Reducing Load Times

Published on July 30, 2024

After reading this article, you’ll: The critical importance of mobile app performance for user retention…

Read More

Voice-Activated Features in Mobile Apps: The Next Frontier

Published on July 23, 2024

After reading this article, you’ll: Grasp the current state and future potential of voice-activated features…

Read More

Accessibility Features in Mobile Apps: Why They Matter

Published on July 16, 2024

After reading this article, you’ll: Gain an understanding of why mobile app accessibility is important,…

Read More
// Add original row class to side image sections $('section.side-image').each(function() {var rowClass = $(this).find('.wpb_row').first().attr('class').split('vc_row-fluid').pop().trim();$(this).addClass(rowClass);}); // Highlight portfolio in navigation on project pages $('body.posttype-portfolio').find('#menu-navigation a[href*="/portfolio/"]').parent().addClass('current-menu-item'); // Highlight services in navigation on services pages $('body.parent-pageid-12').find('#menu-navigation a[href*="/app-development-services/"]').parent().addClass('current-menu-item'); // Copy tab titles into content for responsive view $('.wpb_tabs .ui-tabs-anchor').each(function() {$( '.wpb_tab' + $(this).attr('href') ).prepend('
' + $(this).html() + '
');}); /*if (jQuery('.portfolio-page').length > 0){*/ /*portfolio-template-default*/ if (jQuery('.portfolio-template-default').length == 0){ $.fn.extend({ animationend: function(callback) { return this.one('webkitAnimationEnd mozAnimationEnd oAnimationEnd oanimationend animationend', callback); }, initWaypoint: function() { return this.addClass('waypoint') .removeClass('animated') .waypoint2(function(direction) { //console.log(this.element) $(this.element).addClass('animated'); this.destroy(); }, { offset: '80%' }); } }); } if (jQuery('.portfolio-template-default.single-portfolio').length > 0){ setTimeout(function () { jQuery('.page-header h1.waypoint, .page-header p.waypoint').addClass('animated'); }, 1000); } if ( window.matchMedia('(min-width: 481px)').matches ) { var waypoints = null; var $waypoints = $('.waypoint'); var waypointSelectors = { 'common': [ $('section.vc_row').has('.lead').find('h1, h2, .lead, .btn'), '[class*="vc_col-"]:not([class*="-12"])', 'section.side-image .image-container', 'section.text-intro h2', 'section.howwework-preview .wpb_tabs', 'section.publications .col-sm-4', 'section.featured-projects .rev_slider_wrapper', 'section.landing-location-intro .wpb_text_column' ], 'home': [], 'app-development-services': [ 'section.services-slider', 'section.services-specialities' ], 'portfolio': [ '.portfolio-showcase [class^="col-"]' ], 'about': [ $('.team-member') ], 'landing': [ '.posts-container .col-sm-6' ], 'staging': [ '.section-clients-v2 .col-sm-3' ] } var pageSlug = window.location.href.split('/'); if (pageSlug.length > 4) { pageSlug = pageSlug[pageSlug.length - 2]; } else { pageSlug = 'home'; } _.every(waypointSelectors, function(selectors, page) { _.each(selectors, function(selector) { $waypoints = $waypoints.add(selector); }); if (page === 'common' || page === pageSlug) { _.each(selectors, function(selector) { $waypoints = $waypoints.add(selector); }); if (page === pageSlug) return false; } return true; }); waypoints = $waypoints.initWaypoint(); } var archiveCurrentCategory = null; var categoryPostsCache = {}; var postWaypointContext = null; var $archivePosts = $('.archive-posts'); var $postsContainer = $archivePosts.find('.posts-container'); var $postsContainer2 = $('
'); function handleHover() { var category = $(this).data('category'); // console.log('hover detected') if (category === archiveCurrentCategory) {return;} $(this).addClass('active') .siblings().removeClass('active'); category ? loadPosts(category) : resetPosts(); archiveCurrentCategory = category; $('.news-subnav a').one('mouseover click', handleHover); } function loadPosts(category) { var cachedPosts = categoryPostsCache[category]; if (cachedPosts) { $postsContainer2.html(cachedPosts); showPosts(); return; } $postsContainer2.load('/category/' + category +'/ .posts-container', function(html) { $postsContainer2.find('.col-sm-6').initWaypoint(); showPosts(); categoryPostsCache[category] = $postsContainer2.find('.posts-container'); }); } function showPosts() {$archivePosts.addClass('show-container-2');} function resetPosts() {$archivePosts.removeClass('show-container-2');} $postsContainer.after($postsContainer2); $('.news-subnav a').one('mouseover click', handleHover).first().trigger('mouseover'); });})(jQuery);-->