-
AuthorPosts
-
November 24, 2014 at 9:04 pm #357106
Just today I updated a customer’s website to Enfold 3.0.4 and encountered a strange issue:
When sorting the products (= portfolio entries) with the portfolio raster’s sort options, sometimes the portfolio items don’t just slide into place, but an additional animation effect is triggered – like “flying in” from the side or top – which makes the sorting process seem a bit erratic.This does not happen in Chrome or IE, but seems to be specific to Firefox (current version / on Win and Linux on several different PCs). I also don’t see this happening with Firefox and your Enfold demo site on these machines, so it must be specific to this very website.
Any clues what might be going on?
November 25, 2014 at 4:38 pm #357622This reply has been marked as private.November 25, 2014 at 11:59 pm #358042Hi!
I think it’s a CSS issue but I couldn’t pinpoint where it was coming from. Try creating a copy of your custom CSS and then remove it to see if it goes away.
Also be sure to deactivate all plugins while testing.
Best regards,
Elliott- This reply was modified 10 years, 1 month ago by Elliott.
November 26, 2014 at 12:15 am #358049Thanks for looking into this!
Deleting the custom CSS and deactivating all plugins (TablePress and Duplicate Post) has no impact – the animation is still erratic. Other than some custom CSS and a little tweaking of the German language files this is basically a “vanilla” Enfold 3.0.4 installation, so I’m not sure what may cause this. I see this happening on the live site and on my local developer copy as well, btw, and WordPress 4.0 with Enfold 3.0.2 didn’t show this issue on Firefox.One thing I noticed is that this does not occur when switching from “All” to any portfolio subcategory, only on switching from one subcategory to another will this happen. So All > Category 1 > All > Category 2… works fine, but All > Category 1 > Category 2… will show the jumpy animation. Not sure if this helps?
- This reply was modified 10 years, 1 month ago by IkariGendo.
November 26, 2014 at 1:05 am #358077I just rebuilt that page anew from scratch and that seems to have fixed it.
EDIT:
Or so I thought. Now it’s getting really weird: As soon as that page is in the menu, the error occurs. If it’s not and and the page is called directly via its URL, everything is fine.- This reply was modified 10 years, 1 month ago by IkariGendo.
November 27, 2014 at 10:53 am #358931This reply has been marked as private.November 28, 2014 at 5:03 pm #359655Hey!
Send us a WordPress login and set your reply as private and we’ll take a closer look.
Best regards,
ElliottNovember 29, 2014 at 12:59 pm #360060I think I have found the issue:
I have “non-clickable” entries in the main menu and it seems those cause this effect.I can even replicate that with a clean Enfold/Wordpress installation and your demo content:
a) Install WordPress 4.0.1 and Enfold 3.0.4
b) Import “Photography Demo” content
c) On page “Portfolio” replace the Masonry portfolio with a portfolio grid
d) Add a non-clickable menu entry like e. g. so:
e) Click randomly through the portfolio grid’s sorting categories.Not always, but on some clicks you will see the same sorting animation glitch. This was no issue with WP 4.0 and Enfold 3.0.2.
November 30, 2014 at 6:01 pm #360309Hi!
I can’t reproduce it on my XAMPP setup. Send us a login to the new installation you created and we’ll take a closer look.
Best regards,
ElliottNovember 30, 2014 at 7:30 pm #360352This reply has been marked as private.December 1, 2014 at 4:45 pm #360846Hey!
Alrighty I see it now. What happens when you delete lines 114 – 264 in /enfold/js/avia.js?
// ------------------------------------------------------------------------------------------- // modified SCROLLSPY by bootstrap // ------------------------------------------------------------------------------------------- function AviaScrollSpy(element, options) { var self = this; var process = $.proxy(self.process, self) , refresh = $.proxy(self.refresh, self) , $element = $(element).is('body') ? $(window) : $(element) , href self.$body = $('body') self.$win = $(window) self.options = $.extend({}, $.fn.avia_scrollspy.defaults, options) self.selector = (self.options.target || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 || '') self.activation_true = false; if(self.$body.find(self.selector + "[href*=#]").length) { self.$scrollElement = $element.on('scroll.scroll-spy.data-api', process); self.$win.on('av-height-change', refresh); self.$body.on('av_resize_finished', refresh); self.activation_true = true; self.checkFirst(); setTimeout(function() { self.refresh() self.process() },100); } } AviaScrollSpy.prototype = { constructor: AviaScrollSpy , checkFirst: function () { var current = window.location.href.split('#')[0], matching_link = this.$body.find(this.selector + "[href='"+current+"']").attr('href',current+'#top'); } , refresh: function () { if(!this.activation_true) return; var self = this , $targets this.offsets = $([]) this.targets = $([]) $targets = this.$body .find(this.selector) .map(function () { var $el = $(this) , href = $el.data('target') || $el.attr('href') , hash = this.hash , hash = hash.replace(/\//g, "") , $href = /^#\w/.test(hash) && $(hash) return ( $href && $href.length && [[ $href.position().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), href ]] ) || null }) .sort(function (a, b) { return a[0] - b[0] }) .each(function () { self.offsets.push(this[0]) self.targets.push(this[1]) }) } , process: function () { if(!this.offsets) return; var scrollTop = this.$scrollElement.scrollTop() + this.options.offset , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight , maxScroll = scrollHeight - this.$scrollElement.height() , offsets = this.offsets , targets = this.targets , activeTarget = this.activeTarget , i if (scrollTop >= maxScroll) { return activeTarget != (i = targets.last()[0]) && this.activate ( i ) } for (i = offsets.length; i--;) { activeTarget != targets[i] && scrollTop >= offsets[i] && (!offsets[i + 1] || scrollTop <= offsets[i + 1]) && this.activate( targets[i] ) } } , activate: function (target) { var active , selector this.activeTarget = target $(this.selector) .parent('.' + this.options.applyClass) .removeClass(this.options.applyClass) selector = this.selector + '[data-target="' + target + '"],' + this.selector + '[href="' + target + '"]' active = $(selector) .parent('li') .addClass(this.options.applyClass) if (active.parent('.sub-menu').length) { active = active.closest('li.dropdown_ul_available').addClass(this.options.applyClass) } active.trigger('activate') } } /* AviaScrollSpy PLUGIN DEFINITION * =========================== */ $.fn.avia_scrollspy = function (option) { return this.each(function () { var $this = $(this) , data = $this.data('scrollspy') , options = typeof option == 'object' && option if (!data) $this.data('scrollspy', (data = new AviaScrollSpy(this, options))) if (typeof option == 'string') data[option]() }) } $.fn.avia_scrollspy.Constructor = AviaScrollSpy $.fn.avia_scrollspy.defaults = { offset: (parseInt($('.html_header_sticky #main').data('scroll-offset'), 10)) + ($(".html_header_sticky #header_main_alternate").outerHeight()) + ($(".html_header_sticky #header_meta").outerHeight()) + 1 + parseInt($('html').css('margin-top'),10), applyClass: 'current-menu-item' }
Best regards,
ElliottDecember 1, 2014 at 5:44 pm #360901Looking good: Issue vanished. Thanks for your help!
Greetings from Germany,
IkariGendoDecember 1, 2014 at 8:48 pm #361019Hey!
Alrighty. I’m not sure what a good fix would be so I’ll add this to our bug list to see what Kriesi thinks.
Best regards,
Elliott -
AuthorPosts
- You must be logged in to reply to this topic.