The comments appearing after articles in the Times Online are displayed in reverse chronological order (latest first), which I find difficult to read, so I wrote this GreaseMonkey jQuery script to click the Oldest first link after the page is loaded:
// ==UserScript==
// @name Timesonline.co.uk earliest comment first
// @namespace kamhungsoh.com
// @description Show an article's comments, earliest comment first.
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js
// @include http://*.timesonline.co.uk/*
// ==/UserScript==
var evt = document.createEvent('HTMLEvents');
evt.initEvent('click', true, true);
$("a:contains('Oldest first')").each(function() {
this.dispatchEvent(evt);
});
The script is a little more complicated than I expected. Apparently jQuery cannot send events (see the last response in the thread) that it itself did not bind to objects, so my script has to create a click event object and send it to the link. Otherwise, I would written $("a:contains('Oldest first')").trigger('click');
Also, the script's a little hacky because it will send a click event to all links containing the text 'Oldest first', though it seems pretty unlikely that a page will have more than one link of that type in the first place.
No comments:
Post a Comment