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