Instantly share code, notes, and snippets.

Embed
What would you like to do?
Bookmarklet to view Twitter poll result without voting
(
function() {
var pod = document.getElementById('permalink-overlay-dialog');
if (!pod) return alert('Not a valid poll');
var iframeList = pod.getElementsByTagName('iframe');
if (iframeList.length === 0) return alert('Not a valid poll');
else if (iframeList.length > 1) return alert('Not a valid poll');
var iframe = iframeList[0];
var innerDoc = iframe.contentDocument || iframe.contentWindow.document;
var pollChoices = innerDoc.getElementsByClassName('PollXChoice-choice');
var result = '';
for (var choice of pollChoices) {
var choiceData = choice.getElementsByClassName('PollXChoice-choice--text');
var choiceDetailSpan = choiceData && choiceData[0];
var spanList = choiceDetailSpan && choiceDetailSpan.childNodes;
if (spanList && spanList.length > 2) {
result += spanList[1].textContent + ': ' + spanList[0].textContent + '\n';
}
}
return alert(result || 'Not a valid poll');
}
)();
@Felipeplz

This comment has been minimized.

Felipeplz commented Dec 11, 2018

For polls with video replies (which are iframes too):

https://gist.github.com/Felipeplz/d41056f5eaa1b6787670a21ddaa7db0e

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment