Greasy Fork

@-posting

Link to posts in the same 4chan thread with "@".

目前为 2015-08-24 提交的版本。查看 最新版本

// ==UserScript==
// @name		@-posting
// @version		0.5.0.0
// @namespace	atposting
// @license		WTFPL
// @include		*://boards.4chan.org/*
// @run-at		document-end
// @grant		none
// @description Link to posts in the same 4chan thread with "@".
// ==/UserScript==

// This keeps the events.
var replaceHTML = function(node, innerHTML) {
	while (node.firstChild) {
		node.removeChild(node.firstChild);
	};
	var replacementContent = document.createElement('span');
	replacementContent.innerHTML = innerHTML;
	node.appendChild(replacementContent);
}

var twitterify = function(targets) {
	Array.prototype.forEach.call(targets, function(target) {
		replaceHTML(target, target.innerHTML.replace(
			/@([0-9]+)/,
			'<a href="#p$1" class="quotelink">@$1</a>'
		).replace(
			/Dear ([0-9]+)/,
			'Dear <a href="#p$1" class="quotelink">$1</a>'
		));
	});
};
var observer = new MutationObserver(function(mutations) {
	mutations.forEach(function(mutation) {
		twitterify(mutation.addedNodes);
	});
});
observer.observe(document.querySelector('.board .thread'), { attributes: true, childList: true });
twitterify(document.querySelectorAll('.postMessage'));