超星刷課腳本安裝



軟件成品下載:https://share.weiyun.com/ekTKELEB
今天再講一下超星WEB端的JS腳本,挺簡單的一腳本,功能的話,有自動下一集,后台運行吧。

首先說一說思路吧,有js基礎的童鞋看完思路基本可以自己寫了

拿到這個業務首先分析一波需要解決的問題,我們首先需要他自動播放!然后需要保證后台運行,最后就是自動下一集了。(其實還有個自動答題功能的,但是沒得題庫所以我懶得弄,要是有小伙伴有題庫的可以私我,我在給它弄弄,有閑心的小伙伴你可以自己寫個爬蟲直接到網站上去爬,這樣就不需要弄題庫,不過感覺更麻煩了emmmmmm)

第一個問題自動播放,他的解決方案只需要調用js多媒體中的play()方法就好了,但是超星這里有一個坑,就是你無法直接獲得video標簽的dom對象,因為他們在這里使用了!
沒錯,就是右下角那個姿勢(  ̄▽ ̄)σ。
看他的代碼可以看出來他是頁面嵌套頁面嵌套頁面,不是很懂他嵌套兩個頁面就為了放一個video標簽,所以如果你直接document.getxxxx這樣是拿不到的

So,你需要先定位到video標簽存在的那個嵌套頁面,拿到那個頁面的dom對象然后在doc…,

最后調用這個標簽的play方法就可以解決自動播放了。

第二個就是要保證后台運行時視頻不會暫停,其實他在這里是監聽了鼠標移出事件,你可以直接打開瀏覽器的開發者工具移除該事件🤔,但是這個操作用代表是實現不了的, 因為他事件里用的全是匿名函數,眾所周知,匿名函數是無法被移除的。

所以在這里我們換一個思路,給他的pause也就是暫停事件添加一個監聽器,每當視頻暫停的時候,我們就調用play方法播放他,這樣即可解決后台暫停問題。

最后是自動播放下一集,第一步找到右邊選集菜單的容器的dom對象,通過容器的對象得到他全部劇集的集合,然后就是遍歷他,找到一個判斷方法,這邊的話我用的是右側的黃色任務點判斷他是否還有未完成的視頻,找到后直接模擬點擊就完了,寫完這個函數后,記得給video標簽添加一個監聽ended事件的監聽器!

至此全部功能完成,如果這篇文章對你有幫助,點贊!
最后是自己現在再用的腳本,我把他弄成擴展程序放到瀏覽器里了,別問為什么代碼這個鬼樣子,問就是手機碼字,它為什么復制過來格式沒了我也不知道,反正復制過去也可以直接用。如果有其他更好的思路,歡迎評論交流。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM