mirror of
https://github.com/friendica/friendica
synced 2024-12-22 20:00:16 +00:00
Scroll to next/previous thread when pressing j/k (fixes #3327)
This commit is contained in:
parent
0d2bf557de
commit
31f9b418ba
1 changed files with 23 additions and 0 deletions
23
js/main.js
23
js/main.js
|
@ -322,6 +322,29 @@
|
|||
}
|
||||
});
|
||||
|
||||
$(document).keydown(function (event) {
|
||||
var threads = $('.thread_level_1');
|
||||
if ((event.keyCode === 74 || event.keyCode === 75) && !$(event.target).is('textarea, input')) {
|
||||
var scrollTop = $(window).scrollTop();
|
||||
if (event.keyCode === 75) {
|
||||
threads = $(threads.get().reverse());
|
||||
}
|
||||
threads.each(function(key, item) {
|
||||
var comparison;
|
||||
var top = $(item).offset().top - 100;
|
||||
if (event.keyCode === 74) {
|
||||
comparison = top > scrollTop + 1;
|
||||
} else if (event.keyCode === 75) {
|
||||
comparison = top < scrollTop - 1;
|
||||
}
|
||||
if (comparison) {
|
||||
$('html, body').animate({ scrollTop: top }, 200);
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// Set an event listener for infinite scroll
|
||||
if(typeof infinite_scroll !== 'undefined') {
|
||||
$(window).scroll(function(e){
|
||||
|
|
Loading…
Reference in a new issue