-
-
Save jithurjacob/4d572b6e6be193650cdf8bb28536326a to your computer and use it in GitHub Desktop.
var jq = document.createElement('script'); | |
jq.src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"; | |
document.getElementsByTagName('head')[0].appendChild(jq); | |
// ... give time for script to load, then type (or see below for non wait option) | |
//localStorage.setItem("playbackRate", 2.1); | |
console.log('[start]Pluralsight Continuous Play'); | |
window.setInterval(function(){ | |
$('#next-module').click(); | |
},30000); |
Updated my repo for new pluralsight player - they annoyingly changed the named of the data attribute used to target the button.
John-Blair.
I have copied and pasted the js code in the console in both crome and firefox in the Pluralsight tab, and reloaded the page.
I doesn't work, same button "Continue to next module comes up".
The button is still called the same as your last commit, what I can tell.
Is it working for you, and what did I do wrong?
Thanks
The "Continue to next module" button data attribute changed to "data-css-el86ax" I reflected that in my code snippet.
If you just paste it in to the console window and hit return - then after 5 seconds the button should automatically be clicked --- i just tested it works on my Chrome browser. In the first image i have created that code as a snippet under the Sources tab to make it easier to run each time i go to pluralsight.
Listing the full code I use:
(function () {
if ( !window.jQuery ) {
var dollarInUse = !!window.$;
var s = document.createElement('script');
s.setAttribute('src', '//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js');
s.addEventListener('load', function(){
console.log('jQuery loaded!');
if(dollarInUse) {
jQuery.noConflict();
console.log('`$` already in use; use `jQuery`');
}
});
document.body.appendChild(s);
}
})();
setInterval(function () {jQuery("button[data-css-el86ax]:visible").click();}, 5000);
This wasn't working for me due to some issues with injecting jQuery into the page.
So I created another without the jQuery dependency.
https://gist.github.com/Esirei/1489b95b59b093e223d0cf3c9b2336ef
Always good to remove a dependency. Just need to watch out for when they change the text on the Continue button! Yours is a variant of @cemtopkaya
None of these code samples work in 2021. Any solutions ?
None of these code samples work in 2021. Any solutions ?
Hey @Ji993, I've updated my gist.
The class name on the button had been removed.
Check below working script without any external dependency.
https://gist.github.com/satyendrakumarsingh/c2f0b08281c78e95d8db6f74c93ed3eb
Yeah. First of all, screw pluralsight for a HORRENDOUS user experience with lacking an OPTION for enabling autoplay, I am switching to tik tok in protest.
Second of all, this method does not work. It runs into an error in my browser stating paused on promise rejection: SyntaxError: Unexpected end of JSON input
I also see a F ton of "Your Appcues account has expired, but you have not uninstalled Appcues. Please contact us at [email protected]." errors and warnings all over the console.
I never do use the console on this browser for anything. I have attempted this with all extensions removed as well and it is still no go.
In conclusion, back to my first line and I will not be renewing the lowered quality platform any time soon. PDF books and e-books are less frustrating than this when give to an atuoreader. What is pluralsight thinking....
@spahbedsuren Try mine - it still works for me. https://github.com/John-Blair/pluralsight/blob/master/auto-click-continue-to-next-module-button.js
@spahbedsuren Try mine - it still works for me. https://github.com/John-Blair/pluralsight/blob/master/auto-click-continue-to-next-module-button.js
@spahbedsuren Simply Awesome!!! Thanks
@mayanknc Now that Plularshight UI has been restylished, you script now longer works as the text seems to be changed in button (now format is like 'Start module X'). Could your update your script?
Here is my own spin on the code. @mayanknc @JarkkoLaiho @John-Blair
This should work since it checks for the key words.
const keyWord = "Start module";
let autoNext = () => {
Array.from(document.querySelectorAll('button'))
.filter(b => b.textContent.includes(keyWord))
.forEach(b => b.click());
};
setInterval(autoNext, 2500);
For the nex module: