Greasy Fork

Greasy Fork is available in English.

优酷VIP站外解析

替换页内播放器并可以点击vip转跳外部网站播放

当前为 2021-01-02 提交的版本,查看 最新版本

// ==UserScript==
// @name         优酷VIP站外解析
// @namespace    http://tampermonkey.net/
// @version      0.3
// @description  替换页内播放器并可以点击vip转跳外部网站播放
// @author       You
// @include      *://m.youku.com/v*
// @include      *://m.youku.com/a*
// @include      *://v.youku.com/v_*
// @grant        none
// ==/UserScript==

(function() {
  'use strict';
  
  // 替换内video 失败 不能全屏
  // setTimeout(() => {
  //   let parent = document.querySelector("#ykPlayer")
  //   let child = parent.querySelector(".youku-film-player")
  //   let child2 = parent.querySelector(".preplay-layer")
  //   let child3 = parent.querySelector(".top_area")
  //   parent.removeChild(child)
  //   parent.removeChild(child2)
  
  //   let para = document.createElement("iframe")
  //   para.style.width = "100%"
  //   para.style.height = "100%"
  //   para.style.border = "0"
  //   para.src = "https://jx.618g.com/?url=" + window.location.href
    
  //   parent.insertBefore(para, child3)
  // }, 2500)
  
  // 替换内按钮 失败 乱了
  // let parent = document.querySelector(".anthology-content-scroll .anthology-content")
  // // let child = document.querySelector(".anthology-content-scroll .anthology-content a:nth-child(" + index + 1 + ")")

  // let as = document.querySelectorAll(".anthology-content-scroll .anthology-content a")
  // let arr = []
  // as.forEach((element, index) => {
  //   arr.push(element)
  // })

  // arr.forEach((element, index) => {
  //   let el = document.createElement("a")
  //   el.target = "_blank"
  //   el.className = "box-item"
  //   el.href = "https://jx.618g.com/?url=" + element.getAttribute("href")
  //   el.innerHTML = index + 1 + "&"

  //   parent.insertBefore(el, element)
  // })
  
  
  let proc = function () {
    let as = document.querySelectorAll(".anthology-content-scroll .anthology-content a")
    let arr = []
    as.forEach((element, index) => {
      arr.push(element)
      // console.log(element)
    })

    arr.forEach((element, index) => {
      let markBox = element.querySelector(".mark-text-wrap")
      let mark = element.querySelector(".mark-text")
      // console.log(mark)
      
      if (mark && mark.innerHTML == "VIP") {
        if (markBox) {
          markBox.style.padding = "0"
          markBox.style.backgroundColor = "#00b350"
        }
        
        let el = document.createElement("a")
        el.target = "_blank"
        el.href = "https://jx.618g.com/?url=" + element.getAttribute("href")
        el.innerHTML = "VIP"
        el.style.padding = "3px"
        el.onmouseover = function(){
          this.style.color = "white"
        }
        
        mark.innerHTML = ""
        mark.appendChild(el)
      }
    })
  }
  proc()

  let btn = document.querySelectorAll(".paged-wrap a")
  btn.forEach((element, index) => {
    element.onclick = function(e){
      console.log(e)
      setTimeout(() => {
        proc()
      }, 300)
    }
  })
})();