我正在编写一个脚本来更改我经常使用的网站的消息系统。它在每个消息线程的顶部添加一个按钮。单击时,它会自动移动到线程中的最新消息。
我遇到的问题是消息是由 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);
}