diff options
Diffstat (limited to 'js/Article.js')
-rw-r--r-- | js/Article.js | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/js/Article.js b/js/Article.js index 1b92c2965..78ace5d0b 100644 --- a/js/Article.js +++ b/js/Article.js @@ -275,7 +275,7 @@ define(["dojo/_base/declare"], function (declare) { dialog.show(); }, - cdmScrollToId: function (id, force) { + cdmScrollToId: function (id, force, event) { const ctr = $("headlines-frame"); const e = $("RROW-" + id); @@ -284,6 +284,18 @@ define(["dojo/_base/declare"], function (declare) { if (force || e.offsetTop + e.offsetHeight > (ctr.scrollTop + ctr.offsetHeight) || e.offsetTop < ctr.scrollTop) { + if (event && event.repeat) { + ctr.addClassName("forbid-smooth-scroll"); + window.clearTimeout(this._scroll_reset_timeout); + + this._scroll_reset_timeout = window.setTimeout(() => { + if (ctr) ctr.removeClassName("forbid-smooth-scroll"); + }, 250) + + } else { + ctr.removeClassName("forbid-smooth-scroll"); + } + ctr.scrollTop = e.offsetTop; Element.hide("floatingTitle"); |