Created
March 4, 2013 14:39
-
-
Save krisanalfa/5082643 to your computer and use it in GitHub Desktop.
Simulate Auto-Like Facebook Status
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function simulate(element, eventName) { | |
var options = extend(defaultOptions, arguments[2] || {}); | |
var oEvent, eventType = null; | |
for (var name in eventMatchers) { | |
if (eventMatchers[name].test(eventName)) { eventType = name; break; } | |
} | |
if (!eventType) throw new SyntaxError('Only HTMLEvents and MouseEvents interfaces are supported'); | |
if (document.createEvent) { | |
oEvent = document.createEvent(eventType); | |
if (eventType == 'HTMLEvents') { | |
oEvent.initEvent(eventName, options.bubbles, options.cancelable); | |
} else { | |
oEvent.initMouseEvent(eventName, options.bubbles, options.cancelable, document.defaultView, | |
options.button, options.pointerX, options.pointerY, options.pointerX, options.pointerY, | |
options.ctrlKey, options.altKey, options.shiftKey, options.metaKey, options.button, element); | |
} | |
element.dispatchEvent(oEvent); | |
} else { | |
options.clientX = options.pointerX; | |
options.clientY = options.pointerY; | |
var evt = document.createEventObject(); | |
oEvent = extend(evt, options); | |
element.fireEvent('on' + eventName, oEvent); | |
} | |
return element; | |
} | |
function extend(destination, source) { | |
for (var property in source) | |
destination[property] = source[property]; | |
return destination; | |
} | |
var eventMatchers = { | |
'HTMLEvents': /^(?:load|unload|abort|error|select|change|submit|reset|focus|blur|resize|scroll)$/, | |
'MouseEvents': /^(?:click|dblclick|mouse(?:down|up|over|move|out))$/ | |
} | |
var defaultOptions = { | |
pointerX: 0, | |
pointerY: 0, | |
button: 0, | |
ctrlKey: false, | |
altKey: false, | |
shiftKey: false, | |
metaKey: false, | |
bubbles: true, | |
cancelable: true | |
} | |
var link = document.getElementsByClassName("UFILikeLink"); | |
var id = []; | |
for(var i = 0; i < link.length; i++) { | |
if(link[i].innerHTML == "Like") id.push((link[i].id)); | |
} | |
function likeThis(ids) { | |
simulate(document.getElementById(ids), "click"); | |
} | |
var i = 0; | |
var interval = setInterval(function() { | |
if(i < id.length) { likeThis(id[i]); i++; | |
} else { | |
this.clearInterval(); | |
} | |
}, 5000); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment