亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用JS代碼自動刪除稿件的普通彈幕功能

發布時間:2021-07-01 11:17:51 來源:億速云 閱讀:123 作者:小新 欄目:web開發

這篇文章主要介紹如何使用JS代碼自動刪除稿件的普通彈幕功能,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

1.刪除彈幕的流程分析

判斷彈幕A是否為普通彈幕,是則選中。

如何使用JS代碼自動刪除稿件的普通彈幕功能

點擊刪除彈幕的按鈕,彈出二次確認框。

如何使用JS代碼自動刪除稿件的普通彈幕功能

點擊確定,成功刪除。

2.刪除彈幕相關的html代碼,js代碼2.1 選中

如何使用JS代碼自動刪除稿件的普通彈幕功能

可通過判斷class屬性為"item-front"的標簽里是否包含“高級”兩個字來決定是否勾選該彈幕:

document.getElementsByClassName("item-font")[i].innerHTML.match("高級")
getElementsByClassName("bili-checkbox")[i+1].click()

這里i+1是由于有其他標簽也使用了“bili-checkbox”屬性。

如何使用JS代碼自動刪除稿件的普通彈幕功能

如何使用JS代碼自動刪除稿件的普通彈幕功能

2.2

如何使用JS代碼自動刪除稿件的普通彈幕功能

用click函數觸發點擊“刪除彈幕”按鈕的操作:

document.getElementsByClassName("dele-btn")[0].getElementsByClassName("plain")[0].click();

如何使用JS代碼自動刪除稿件的普通彈幕功能

點擊二次確認框:

for (i = 0; i < document.getElementsByClassName("item-attr").length; i++) {  if(!document.getElementsByClassName("item-font")[i].innerHTML.match("高級")){    document.getElementsByClassName("bili-checkbox")[i+1].click();  }}document.getElementsByClassName("dele-btn")[0].getElementsByClassName("plain")[0].click();document.getElementsByClassName("bili-btn")[2].click();

但是由于控制臺執行js的代碼速度過快,會導致在執行到第7行代碼的時候,class屬性為“bili-btn”的第3個標簽還沒加載出來,所以要在執行第7個語句之前讓其停頓一下。

如何使用JS代碼自動刪除稿件的普通彈幕功能

利用setTimeout()方法可實現延遲執行

setTimeout(function () {document.getElementsByClassName("bili-btn")[2].click(); }, 1000);

setTimeout("document.getElementsByClassName(\"bili-btn\")[2].click()",1000);

至此,只實現了單頁面的批量刪除1次,但是我們知道,假設彈幕有N頁,就必須讓以上代碼不斷運行,直到第x頁不包含普通彈幕,然后跳轉至第x+1頁繼續執行以上刪除代碼。

3. 實現不斷刷新頁面,當刪除完當前頁的普通彈幕時,自動跳轉至下一頁

結合另一篇文章即可實現:https://www.cnblogs.com/wujiecong/p/11549738.html

var timeout = prompt("設置刷新時間");
var current = location.href;
var page = 0;
var count = 0;
if(timeout > 0)
{
  setTimeout('reload()', 1000 * timeout);
}
else
{
  location.replace(current);
}

function reload()
{
  setTimeout('reload()', 1000 * timeout);
  if(count<10){
    const regex = /pn=(\d+)/;
    page = page +1;
  current = current.replace(regex,"pn="+page.toString())
  }  
  var frame = '<frameset cols=\'*\'>\n<frame src=\'' + current + '\' /></frameset>';
  with(document)
  {
    // 引用document對象,調用write方法寫入框架,打開新窗口
    write(frame);
      setTimeout(function(){
    count = 0
    getFrames = window.frames["0"]
    for (i = 0; i < getFrames.document.getElementsByClassName("item-attr").length; i++) {
      if(!getFrames.document.getElementsByClassName("item-font")[i].innerHTML.match("高級")){
        getFrames.document.getElementsByClassName("bili-checkbox")[i+1].click();
        count = count +1;
      }
    }
    if(count>0){
      getFrames.document.getElementsByClassName("dele-btn")[0].getElementsByClassName("plain")[0].click();
      setTimeout(function () {
        getFrames.document.getElementsByClassName("bili-btn")[2].click(); 
      }, 1000);
    }},2000);
    
   // 關閉上面的窗口
    void(close());
  };
}

以上是“如何使用JS代碼自動刪除稿件的普通彈幕功能”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

js
AI

新乡市| 浏阳市| 昂仁县| 郧西县| 孟津县| 吉水县| 额济纳旗| 宁河县| 南丹县| 封丘县| 宜良县| 石楼县| 屏山县| 呼和浩特市| 卓尼县| 元氏县| 四子王旗| 清流县| 改则县| 旬邑县| 新干县| 卢氏县| 蓬溪县| 马尔康县| 沙湾县| 皋兰县| 峡江县| 如东县| 溧水县| 孙吴县| 呼图壁县| 手机| 新龙县| 永胜县| 罗定市| 揭西县| 肇州县| 湟源县| 望谟县| 乌拉特前旗| 大方县|