The answers of the, as duplicate, linked questions haven't helped me first.
Looking at the linked Question
The accepted Answer says
The issue is you're using the Screenshot Capture extension by Google. Uninstall it and try an alternative (such as this).
However. I have no such extension installed.
In the JavaScript Chatroom, i was told
That happens in chrome 30+
Though testing it with different versions (stable, beta, canary), seems to reduce the problem to the canaray version.
I figured it is jQuery.fn.animate
which is causing the trouble. (if you want to see)
It is being called somewhere in the jQuery.fn.scrollTo
function which gets redefined in master-chat.js
function h(a) {
i.animate(l, d, f.easing, a && function() {
a.call(this, c, f)
})
}
So to fix it temporarily it seems to be enough passing 0
as duration
function h(a) {
i.animate(l, 0, f.easing, a && function() {
a.call(this, c, f)
})
}
Calling the first IIFE of master-chat.js
with the workaround, via a bookmarklet
javascript:(function(e){function t(e){return"object"==typeof e?e:{top:e,left:e}}var n=e.scrollTo=function(t,n,r){e(window).scrollTo(t,n,r)};n.defaults={axis:"xy",duration:1.3<=parseFloat(e.fn.jquery)?0:1};n.window=function(){return e(window)._scrollable()};e.fn._scrollable=function(){return this.map(function(){if(this.nodeName&&-1==e.inArray(this.nodeName.toLowerCase(),["iframe","#document","html","body"]))return this;var t=(this.contentWindow||this).document||this.ownerDocument||this;return e.browser.safari||"BackCompat"==t.compatMode?t.body:t.documentElement})};e.fn.scrollTo=function(r,i,s){"object"==typeof i&&(s=i,i=0);"function"==typeof s&&(s={onAfter:s});"max"==r&&(r=9e9);s=e.extend({},n.defaults,s);i=i||s.speed||s.duration;s.queue=s.queue&&1<s.axis.length;s.queue&&(i/=2);s.offset=t(s.offset);s.over=t(s.over);return this._scrollable().each(function(){function o(e){l.animate(v,0,s.easing,e&&function(){e.call(this,r,s)})}var u=this,l=e(u),h=r,p,v={},m=l.is("html,body");switch(typeof h){case"number":case"string":if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(h)){h=t(h);break}h=e(h,this);case"object":if(h.is||h.style)p=(h=e(h)).offset()}e.each(s.axis.split(""),function(e,t){var r="x"==t?"Left":"Top",i=r.toLowerCase(),a="scroll"+r,c=u[a],d=n.max(u,t);p?(v[a]=p[i]+(m?0:c-l.offset()[i]),s.margin&&(v[a]-=parseInt(h.css("margin"+r))||0,v[a]-=parseInt(h.css("border"+r+"Width"))||0),v[a]+=s.offset[i]||0,s.over[i]&&(v[a]+=h["x"==t?"width":"height"]()*s.over[i])):(r=h[i],v[a]=r.slice&&"%"==r.slice(-1)?parseFloat(r)/100*d:r);/^\d+$/.test(v[a])&&(v[a]=0>=v[a]?0:Math.min(v[a],d));!e&&s.queue&&(c!=v[a]&&o(s.onAfterFirst),delete v[a])});o(s.onAfter)}).end()};n.max=function(t,n){var r="x"==n?"Width":"Height",i="scroll"+r;if(!e(t).is("html,body"))return t[i]-e(t)[r.toLowerCase()]();var r="client"+r,s=t.ownerDocument.documentElement,o=t.ownerDocument.body;return Math.max(s[i],o[i])-Math.min(s[r],o[r])}})(jQuery)
isn't the optimal way to get around this though. Since the canary version is not supported, this is probably not going to be fixed, so if anyones' using it and experience the problem, you can use the above code, either as bookmarklet or userscript, to temporarily get rid of the problem.
It seems the question can be closed then
will not be implemented or fixed at the present time.
is the better fit thanis intentional
$.fx.off
to just disable all animations as a desperate workaround for now.