頻繁に使用する Web サイトのメッセージ システムを変更するスクリプトを作成しています。各メッセージ スレッドの上部にボタンを追加します。クリックすると、スレッド内の最新のメッセージに自動的に移動します。
私が抱えている問題は、メッセージがphpによってロードされ、メッセージがロードされる前にスクリプトが起動することです。また、サイトはすべてのメッセージ スレッドを同時にロードするわけではありません。10 程度が読み込まれ、下にスクロールするとさらに読み込まれます。メッセージスレッドごとにボタンをロードする方法はありますか、それとも到達不可能な目標を目指していますか?
// ==UserScript==
// @name Imgur - Message Viewer
// @namespace Basion
// @description It skips to the bottom of the most recent message
// @author Basion
// @include http://imgur.com/*
// @include https://imgur.com/*
// @include http://*.imgur.com/*
// @include https://*.imgur.com/*
// @run-at document-end
// ==/UserScript==
var messages = document.getElementsByClassName("thread-wrapper");
var newA = document.createElement('a');
for (var i = 0; i < messages.length; i++) {
newA.addEventListener("click", scrollToMessage(i), true);
newA.innerText = "Go to Newest Message";
messages[i].appendChild(newA);
}
function scrollToMessage(id) {
var newMessages = document.getElementsByClassName('thread-wrapper');
newMessages[id].scrollIntoView(false);
}