The annual Northside Fourth of July Parade and Rock N' Roll Carnival took place this very warm week.
The parade has been going on every year since 1970 and is an all-out celebration of independence, community, small businesses and individuality. This year we saw creative handmade floats from vintage stores, bars and community organizations; local marching bands; drill teams; every politician you've ever heard of; ladies dancing with lawn chairs; guys dancing with power tools; and other unexpected and delightful displays of pride and spirit.
Following the parade was the second day of the Northside Rock N' Roll Carnival at Hoffner Park. The event featured live music, food trucks, a beer garden serving MadTree and Urban Artifact, vendors and more.
Scroll down to view images
Page 1 of 5
Photo: Hailey Bollinger
1 of 89
Photo: Hailey Bollinger
2 of 89
Photo: Hailey Bollinger
3 of 89
Photo: Hailey Bollinger
5 of 89
Photo: Hailey Bollinger
6 of 89
Photo: Hailey Bollinger
7 of 89
Photo: Hailey Bollinger
8 of 89
Photo: Hailey Bollinger
9 of 89
Photo: Hailey Bollinger
10 of 89
Photo: Hailey Bollinger
11 of 89
Photo: Hailey Bollinger
12 of 89
Photo: Hailey Bollinger
13 of 89
Photo: Hailey Bollinger
14 of 89
Photo: Hailey Bollinger
15 of 89
Photo: Hailey Bollinger
16 of 89
Photo: Hailey Bollinger
17 of 89
Photo: Hailey Bollinger
18 of 89
19 of 89
Photo: Hailey Bollinger
20 of 89
Page 1 of 5
Next Page
`this.removeSpinner = () => {jQuery(slideshowInstance.itemContainerSelector + ' div[uk-spinner]').remove()};this.prevPageLinkHTML = `Previous Page `this.nextPageLinkHTML = `Next Page `Object.defineProperties(this, {'items': { get: function() { return jQuery(this.itemContainerSelector).find(this.itemSelector)}},'currentItem': {get: function() {var foundItem = nullvar foundItemInView = nullthis.items.each(function () {var currentInView = elementInView(jQuery(this), scrollTopOffset, 0)if (currentInView) {// An in view item is already located extra logicif (foundItemInView && foundItemInView.inView) {// The entire previously found item is visible - it winsif (foundItemInView.topInView && foundItemInView.bottomInView) return// The previously found item covers the visible area - it winsif (foundItemInView.middleCoversView) return// The previously found item has more surface area - it winsif (foundItemInView.percentVisable > currentInView.percentOfViewHeight) return}foundItem = jQuery(this)foundItemInView = currentInView}})return foundItem}},'currentItemIndex': {get: function() {var currentElement = this.currentItem.closest('[slide-index]')if(currentElement) {return parseInt(currentElement.attr('slide-index'))}return null}},'currentItemId': {get: function() {var currentElement = this.currentItem.closest('[slide-id]')if(currentElement) {return currentElement.attr('slide-id')}return null}}})var slideshowInstance = this// xxx for debuggering - igwindow.slideshowInstance = slideshowInstance;var scrollTopOffset = window.innerHeight > this.smallMenuBreakPoint ? 110 : 140var originUrl = window.location.hrefthis.scrollToIndex = function (index) {var slideItem = this.items.filter('[slide-index="' + index + '"]')if (slideItem.length) { var topOffset = slideItem.offset().top - scrollTopOffset// window.scrollTo({ top: topOffset, behavior: 'smooth' })window.scrollTo({ top: topOffset, behavior: 'auto' })}else {this.fetchMore(index, function () {slideshowInstance.scrollToIndex(index)})}}this.fetchMore = function (startIndex, callback) {var currentItemOnFetch = this.currentItemvar url = '/cincinnati/photos-northside-fourth-of-july-parade-and-rock-n-roll-carnival/Slideshow/12232374'var params = {ajaxComponent: componentId,action: 'grabMore',startIndex: startIndex,oid: slideshowOid,cb: '1656355632',}if (paginate) {params.paginate = paginate;}var keywords = currentItemOnFetch.attr('slide-keywords')if (keywords) {params.keywords = keywords}if (editorView === true) {params.editor = true}// jQuery.ajax({url: url,type: 'GET',data: params,dataType: 'json',// beforeSend: function () { console.log('Fetching results') },success: function (data) {console.log('success', data.results, data.results.length, data.error, data)if (data) {if (data.error) {console.log(data.error)}else if (data.results) {console.log('slideshowInstance.items', slideshowInstance.items)for (var i = 0; i < data.results.length; i++) {var resultItem = jQuery(data.results[i])// // var resultItem = jQuery.parseHTML(data.results[i], document, true);var resultItemIndex = parseInt(resultItem.attr('slide-index'))var resultAlreadyInserted = slideshowInstance.items.filter('[slide-index="' + resultItemIndex + '"]').length > 0console.log('result', resultItemIndex)var previousItem = nullvar previousItemIndex = 0if (!resultAlreadyInserted) {slideshowInstance.items.each(function () {if (resultAlreadyInserted) returnvar currentItem = jQuery(this)var currentItemIndex = parseInt(currentItem.attr('slide-index'))if (resultItemIndex === currentItemIndex ) {resultAlreadyInserted = truereturn}else if (resultItemIndex > previousItemIndex && resultItemIndex < currentItemIndex) {var topOffsetBeforeInsert = currentItemOnFetch.get(0).getBoundingClientRect().topresultItem.insertBefore(currentItem)resultAlreadyInserted = truevar adjustedTopPosition = currentItemOnFetch.offset().top - topOffsetBeforeInsertwindow.scrollTo({ top: adjustedTopPosition, behavior: 'auto' })}previousItem = currentItempreviousItemIndex = currentItemIndex})if (!resultAlreadyInserted) {var topOffsetBeforeInsert = currentItemOnFetch.get(0).getBoundingClientRect().topresultItem.insertAfter(slideshowInstance.items.last())resultAlreadyInserted = truevar adjustedTopPosition = currentItemOnFetch.offset().top - topOffsetBeforeInsertwindow.scrollTo({ top: adjustedTopPosition, behavior: 'auto' })if (typeof instgrm === 'object' && instgrm.Embeds && typeof instgrm.Embeds.process === 'function') {setTimeout(instgrm.Embeds.process, 200);}}}}}else { console.log('How did we get here?') }}else { console.log('No result or error returned from content request.') }},complete: function () { slideshowInstance.items = jQuery(slideshowInstance.itemSelector) // Update items resultslideshowInstance.removeSpinner();if (typeof callback === 'function') { callback() }},error: function (jqXHR, textStatus, errorThrown) {console.log(jqXHR, textStatus, errorThrown);if (textStatus === 'timeout') {slideshowInstance.removeSpinner();if (paginate === true) return;paginate = true;if (slideshowInstance.items.length < totalSlides) {var firstLoadedIndex = parseInt(slideshowInstance.items.first().attr('slide-index')) || 1;var lastLoadedIndex = parseInt(slideshowInstance.items.last().attr('slide-index')) || totalSlides;if(firstLoadedIndex > 1) {var prevLink = jQuery(slideshowInstance.prevPageLinkHTML);var prevLinkUrl = new URL(url, `https://www.citybeat.com`);prevLinkUrl.searchParams.append('startIndex', firstLoadedIndex - 1);prevLinkUrl.searchParams.append('paginate', 'true');prevLink.attr('href', prevLinkUrl.href);jQuery(slideshowInstance.itemContainerSelector).prepend(prevLink);}if(lastLoadedIndex < totalSlides) {var nextLink = jQuery(slideshowInstance.nextPageLinkHTML);var nextLinkUrl = new URL(url, `https://www.citybeat.com`);nextLinkUrl.searchParams.append('startIndex', lastLoadedIndex + 1);nextLinkUrl.searchParams.append('paginate', 'true');nextLink.attr('href', nextLinkUrl.href);jQuery(slideshowInstance.itemContainerSelector).append(nextLink);}}}}})}// var lazyLoadSurroundingItemsInterval = null;var lazyLoadTimeout = null;var lazyLoadSurroundingItems = function (index) {if (paginate) return;if (slideshowInstance.items.length >= totalSlides) {clearInterval(lazyLoadSurroundingItemsInterval);}if (slideshowInstance.lazyLoadMoreResults) {// Rate limit lazyloading more slidesclearTimeout(lazyLoadTimeout);lazyLoadTimeout = setTimeout(function () {var prevIndex = Math.max(index - 1, 1)var prevPrevIndex = Math.max(index - 2, 1)var nextIndex = index + 1var nextNextIndex = index + 2var prevIndexLoaded = slideshowInstance.items.filter('[slide-index="' + prevIndex + '"]').length > 0var prevPrevIndexLoaded = slideshowInstance.items.filter('[slide-index="' + prevPrevIndex + '"]').length > 0var nextIndexLoaded = slideshowInstance.items.filter('[slide-index="' + nextIndex + '"]').length > 0var nextNextIndexLoaded = slideshowInstance.items.filter('[slide-index="' + nextNextIndex + '"]').length > 0if(!prevIndexLoaded) {slideshowInstance.removeSpinner();// jQuery(slideshowInstance.itemContainerSelector).prepend(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(Math.max(prevIndex - (fetchMoreMaxCount - 1), 1))}else if(!prevPrevIndexLoaded) {slideshowInstance.removeSpinner();// jQuery(slideshowInstance.itemContainerSelector).prepend(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(Math.max(prevPrevIndex - (fetchMoreMaxCount - 1), 1))}if(!nextIndexLoaded) {slideshowInstance.removeSpinner();jQuery(slideshowInstance.itemContainerSelector).append(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(nextIndex)}else if(!nextNextIndexLoaded) {slideshowInstance.removeSpinner();jQuery(slideshowInstance.itemContainerSelector).append(slideshowInstance.spinnerHTML)slideshowInstance.fetchMore(nextNextIndex)}}, 200)}}// var lazyLoadLastCheckedIndex = slideshowInstance.currentItemIndexlazyLoadSurroundingItemsInterval = setInterval(function () {var currentIndex = slideshowInstance.currentItemIndexconsole.log(`lazyLoadSurroundingItemsInterval - currentIndex: ${currentIndex}; lazyLoadLastCheckedIndex: ${lazyLoadLastCheckedIndex}`);if(currentIndex !== lazyLoadLastCheckedIndex) {lazyLoadLastCheckedIndex = currentIndex;lazyLoadSurroundingItems(currentIndex);}}, 1000);var onScrollLastCheckedIndex = slideshowInstance.currentItemIndexjQuery(window).on('scroll resize', function () {var currentIndex = slideshowInstance.currentItemIndexif(currentIndex !== onScrollLastCheckedIndex) {onScrollLastCheckedIndex = currentIndex// console.log(`Slide Item index: ${currentIndex}`)fireEvent('foundation:slideshow:slidechange')}});// var onScrollTimeout = null;// jQuery(window).on('scroll resize', function () {// // Rate limit lazyloading more slides// clearTimeout(onScrollTimeout);// onScrollTimeout = setTimeout(function () {// var currentIndex = slideshowInstance.currentItemIndex// if(currentIndex !== onScrollLastCheckedIndex) {// onScrollLastCheckedIndex = currentIndex// console.log(`Slide Item index: ${currentIndex}`)// fireEvent('foundation:slideshow:slidechange')// }// }, 100);// });this.initialized = falsethis.init = function () {if (this.initialized === true) return// Prevent the browser from trying to scroll to the last scroll position before reloadif (history.scrollRestoration) {history.scrollRestoration = 'manual'}var startIndex = this.items.first().attr('slide-index')var oid = window.location.pathname.match(/\d+$/)if (oid) {var grabIndex = parseInt(this.items.closest('[slide-id="' + oid[0] + '"]').attr('slide-index'))if (!isNaN(grabIndex)) {var startIndex = grabIndex}}// if (startIndex > 1) {// this.scrollToIndex(startIndex)// }// if(jQuery(this.itemContainerSelector + '[single-listing]').length === 0) {// this.lazyLoadMoreResults = true// }this.lazyLoadMoreResults = truethis.initialized = truelazyLoadSurroundingItems(startIndex)}return this}var SlideshowItems = new SlideshowItemsObj()// Ad refresh on slide change handlingvar adSlideChangeRefreshThreshold = 10;var adSlideChangeRefreshTimeout = null;// adSlideChangeRefreshTimeout = setTimeout(function () {adSlideChangeRefreshTimeout = null; // Set timer to null}, adSlideChangeRefreshThreshold)// Timeout to prevent fast jogging from item to itemvar itemChangeTimeout = nulljQuery(document).on('foundation:slideshow:slidechange', function () {if (editorView !== true) {updateMetaDataFromElement(SlideshowItems.currentItem)}// Google Anayltics track pageviewif (typeof ga === 'function') {console.log("foundation:slideshow:slidechange event", "sending pageview navigation to:", window.location.href);ga('set', 'location', window.location.href)for (let i = 1; i <= 3; i++) {let currentDimension = jQuery(SlideshowItems.currentItem).attr('ga-dimension'+i)if (typeof currentDimension === 'string') {ga('set', 'dimension' + i, currentDimension)}else {ga('set', 'dimension' + i, '') }}ga('send', 'pageview')}// if (adSlideChangeRefreshTimeout === null) {// adSlideChangeRefreshTimeout = setTimeout(function () {adSlideChangeRefreshTimeout = null; // Set timer to null}, adSlideChangeRefreshThreshold)// if (Foundation.Ad && Foundation.Ad.slots) {if (typeof (Foundation.Ad.slots['CIN_Footer-1']) === 'object') {Foundation.Ad.showFooter('CIN_Footer-1');}}// if (Foundation.Gpt && Foundation.Gpt.getInPageSlotDataById) {var gptSlots = window.googletag.pubads().getSlots();var gptSlotFixedFooter = gptSlots.filter((slot) => slot.getSlotElementId() === `FixedFooter`)if (gptSlotFixedFooter.length) {Foundation.Gpt.ShowAd.refreshFixedFooter(gptSlotFixedFooter[0]);}}}});// Try to init immediatelySlideshowItems.init()// On document loadedjQuery(function () {SlideshowItems.init()})// })();