I would like to request a new feature for ChatGPT that would greatly enhance user navigation. Specifically, I am requesting the addition of a shortcut key that allows users to quickly jump/snap to the beginning of the previous answer or question within the current chat session.
Currently, navigating through long conversations can be cumbersome, and having a shortcut key for this purpose would significantly improve the user experience by making it easier to reference and review earlier parts of the conversation.
I appreciate your consideration of this feature request and look forward to any updates you can provide.
Absolutely this. As a possible temporary solution, try to create a new bookmark in your browser. In the link section type in this javascript.
javascript:(function(){const e=document.querySelectorAll('body > div.relative.flex.h-full.w-full.overflow-hidden.transition-colors.z-0 > div.relative.flex.h-full.max-w-full.flex-1.flex-col.overflow-hidden > main > div.composer-parent.flex.h-full.flex-col.focus-visible\\:outline-0 > div.flex-1.overflow-hidden.\\@container\\/thread > div > div > div > div > article');if(e.length>0){const l=e[e.length-1];l.scrollIntoView();}})();
Thanks a ton for this! I had no idea something like this existed, and it worked like a charm.
I took your script and tweaked it a bit to give me even more flexibility. Now Iâve got two bookmarksâone to jump to the next question and one to go back to the previous one. Itâs working perfectly!
Next Question
javascript:(function(){const questions=document.querySelectorAll(âbody > div.relative.flex.h-full.w-full.overflow-hidden.transition-colors.z-0 > div.relative.flex.h-full.max-w-full.flex-1.flex-col.overflow-hidden > main > div.composer-parent.flex.h-full.flex-col.focus-visible\:outline-0 > div.flex-1.overflow-hidden.\@container\/thread > div > div > div > div > articleâ);if(questions.length>0){let currentIndex=Array.from(questions).findIndex(el=>el.hasAttribute(âdata-currentâ));if(currentIndex===-1){currentIndex=-1;}const nextIndex=currentIndex+1;if(nextIndex<questions.length){questions.forEach(el=>el.removeAttribute(âdata-currentâ));const nextQuestion=questions[nextIndex];nextQuestion.setAttribute(âdata-currentâ,âtrueâ);nextQuestion.scrollIntoView();}else{alert(âYouâre already at the last question!â);}}})();
Previous question:
javascript:(function(){const questions=document.querySelectorAll(âbody > div.relative.flex.h-full.w-full.overflow-hidden.transition-colors.z-0 > div.relative.flex.h-full.max-w-full.flex-1.flex-col.overflow-hidden > main > div.composer-parent.flex.h-full.flex-col.focus-visible\:outline-0 > div.flex-1.overflow-hidden.\@container\/thread > div > div > div > div > articleâ);if(questions.length>0){let currentIndex=Array.from(questions).findIndex(el=>el.hasAttribute(âdata-currentâ));if(currentIndex===-1){currentIndex=questions.length;}const previousIndex=currentIndex-1;if(previousIndex>=0){questions.forEach(el=>el.removeAttribute(âdata-currentâ));const previousQuestion=questions[previousIndex];previousQuestion.setAttribute(âdata-currentâ,âtrueâ);previousQuestion.scrollIntoView();}else{alert(âYouâre already at the first question!â);}}})();
Once again, thanks so much! Your response has seriously leveled up my ChatGPT experience. Much appreciated!
One simple way to achieve something similar is to number your questions, eg. Q1 , Q2, etc. Then you can use the search function to find your questions. Also, you can ask ChatGPT to number its answers in a similar fashion and even give a general rule like that under a project, but as for now, the latter doesnât work with every ChatGPT model.