diff --git a/ui/plugins/ui/Autoscroll.plugin.js b/ui/plugins/ui/Autoscroll.plugin.js
new file mode 100644
index 00000000..aec9523d
--- /dev/null
+++ b/ui/plugins/ui/Autoscroll.plugin.js
@@ -0,0 +1,42 @@
+(function () {
+ "use strict"
+
+ var styleSheet = document.createElement("style");
+ styleSheet.textContent = `
+ .auto-scroll {
+ float: right;
+ }
+ `;
+ document.head.appendChild(styleSheet);
+
+ const autoScrollControl = document.createElement('div');
+ autoScrollControl.innerHTML = `
+ `
+ autoScrollControl.className = "auto-scroll"
+ clearAllPreviewsBtn.parentNode.insertBefore(autoScrollControl, clearAllPreviewsBtn.nextSibling)
+ prettifyInputs(document);
+ let autoScroll = document.querySelector("#auto_scroll")
+
+ SETTINGS_IDS_LIST.push("auto_scroll")
+ initSettings()
+
+ // observe for changes in the preview pane
+ var observer = new MutationObserver(function (mutations) {
+ mutations.forEach(function (mutation) {
+ if (mutation.target.className == 'img-batch') {
+ Autoscroll(mutation.target)
+ }
+ })
+ })
+
+ observer.observe(document.getElementById('preview'), {
+ childList: true,
+ subtree: true
+ })
+
+ function Autoscroll(target) {
+ if (autoScroll.checked && target !== null) {
+ target.parentElement.parentElement.parentElement.scrollIntoView();
+ }
+ }
+})()