Explorar o código

Fix shortcut problem when showing articles unfolded (#2336)

Fix https://github.com/FreshRSS/FreshRSS/issues/2328
Alexandre Alapetite %!s(int64=7) %!d(string=hai) anos
pai
achega
2efab9893c
Modificáronse 1 ficheiros con 4 adicións e 5 borrados
  1. 4 5
      p/scripts/main.js

+ 4 - 5
p/scripts/main.js

@@ -365,13 +365,12 @@ function toggleContent(new_active, old_active, skipping) {
 	const relative_move = context.current_view === 'global',
 		box_to_move = relative_move ? document.getElementById('panel') : document.documentElement;
 
-	if (context.sticky_post) {
+	if (context.sticky_post) {	//Stick the article to the top when opened
 		let prev_article = new_active.previousElementSibling,
-			new_pos = new_active.offsetTop + document.documentElement.scrollTop,
-			old_scroll = box_to_move.scrollTop;
+			new_pos = new_active.offsetParent.offsetTop + new_active.offsetTop;
 
 		if (prev_article && new_active.offsetTop - prev_article.offsetTop <= 150) {
-			new_pos = prev_article.offsetTop;
+			new_pos = prev_article.offsetParent.offsetTop + prev_article.offsetTop;
 			if (relative_move) {
 				new_pos -= box_to_move.offsetTop;
 			}
@@ -382,7 +381,7 @@ function toggleContent(new_active, old_active, skipping) {
 			new_pos -= document.body.clientHeight / 4;
 		}
 		if (relative_move) {
-			new_pos += old_scroll;
+			new_pos += box_to_move.scrollTop;
 		}
 		box_to_move.scrollTop = new_pos;
 	}