找回密码
 注册
搜索
免费空间 免费域名 免费AI 老牌主机商首月仅1美分!27美元/年!Spaceship优惠码 Namecheap优惠码阿里云2核2G3M新老续费同享99元/年!
查看: 123|回复: 1

嘘~不是迅雷会员的你就偷着乐吧。

[复制链接]
发表于 2012-8-25 20:24:45 | 显示全部楼层 |阅读模式
  1. // ==UserScript==
  2. // @name           Xunlei.Any.Player
  3. // @namespace      Xunlei.Any.Player
  4. // @description    Xunlei.Any.Player, should be working on xlpan.com and can play any url as you wish.
  5. // @match          http://vod.xunlei.com/list.html*
  6. // @match          http://vod.lixian.xunlei.com/list.html*
  7. // @match          http://61.147.76.6/iplay.html?*
  8. // @match          http://222.141.53.5/iplay.html?*
  9. // @updateURL      https://userscripts.org/scripts/source/138814.meta.js
  10. // @downloadURL    https://userscripts.org/scripts/source/138814.user.js
  11. // @version        0.38
  12. // ==/UserScript==

  13. (function(){
  14.         'use strict';
  15.         var CONSTANTS = {
  16.                 tips: '<div class="tips_container"><div class="tips_close">X</div>Xunlei.Any.Player \u5DF2\u542F\u7528&emsp;<a href="http://opengg.me/821/xunlei-any-player/" style="color:blue" target="_blank">\u53CD\u9988</a><div class="tips_browser">\u68c0\u6d4b\u5230\u60a8\u6b63\u5728\u4f7f\u7528<span style="color:red" class="tips_browserType">Chrome</span>\u6d4f\u89c8\u5668, \u5982\u679c\u9047\u5230\u95ee\u9898, \u8bf7\u67e5\u770b<a class="tips_usage" href="#" style="color:blue" target="_blank">\u4f7f\u7528\u8bf4\u660e</a></div></div>',
  17.                 css: '.tips_container{padding:7px 15px;color:green;opacity:0.4;background:#ccc;z-index:99999}.tips_container .tips_close{position:absolute;right:5px;top:0;color:red;cursor:pointer}.tips_index{height:100%;position:absolute;left:20em;}.tips_inner{position:fixed;right:0;bottom:0}.tips_container:hover{opacity:0.9}.tips_browser{display:none}',
  18.                 usage:'http://code.google.com/p/opengg-clean-player/wiki/Usage#',
  19.                 browsers:[{
  20.                         name:'Chrome',
  21.                         match:/Chrome/,
  22.                         usage:'Chrome_20-'
  23.                 },{
  24.                         name:'\u591a\u6838\u6d4f\u89c8\u5668',
  25.                         match:/Maxthon|360EE|MetaSr|QQBrowser/ig,
  26.                         usage:'\u5176\u4ed6\u57fa\u4e8eChrome_\u6216Chromium_\u7684\u6d4f\u89c8\u5668(\u730e\u8c79,_360\u6781\u901f\u6d4f'
  27.                 }]
  28.         };
  29.         var UTILS = {
  30.                 addCss: function(str){
  31.                         var style = document.createElement('style');
  32.                         style.textContent = str;
  33.                         document.head.appendChild(style);
  34.                 },
  35.                 addDom: function(html, parentSelector, callback){
  36.                         var div = document.createElement('div');
  37.                         div.innerHTML = html;
  38.                         var childNodes = div.childNodes;
  39.                         var parent = (parentSelector&&document.querySelector(parentSelector))||document.body;
  40.                         for(var i = 0; i<childNodes.length;++i){
  41.                                 if((typeof callback === 'function')&&(childNodes[i].nodeType === 1)){
  42.                                         callback.call(childNodes[i],childNodes[i]);       
  43.                                 }
  44.                                 parent.appendChild(childNodes[i]);
  45.                         }
  46.                 },
  47.                 proxy: function(fn){
  48.                         var script = document.createElement('script');
  49.                         script.textContent = '(' + fn.toString() + ')();';
  50.                         document.body.appendChild(script);
  51.                 }
  52.         };
  53.         function tips(fn){
  54.                 UTILS.addCss(CONSTANTS.css);
  55.                 UTILS.addDom(CONSTANTS.tips, '.top_bar,.pla_bg', function(parent){
  56.                         var close = parent.querySelector('.tips_close');
  57.                         if(close){
  58.                                 close.addEventListener('click', function(){
  59.                                         parent.parentNode.removeChild(parent);
  60.                                 });
  61.                         }
  62.                         fn(parent);
  63.                 });
  64.         }
  65.         var ROUTER = [{
  66.                         hostnames: ['61.147.76.6', '222.141.53.5'],
  67.                         pathnames: ['/iplay.html'],
  68.                         fn: function(){
  69.                                 UTILS.proxy(function(){
  70.                                         function hack(){
  71.                                                 var XL_CLOUD_FX_INSTANCE = window.XL_CLOUD_FX_INSTANCE;
  72.                                                 if(XL_CLOUD_FX_INSTANCE){
  73.                                                         var setFeeParam = XL_CLOUD_FX_INSTANCE.setFeeParam;
  74.                                                         if(setFeeParam&&(setFeeParam.toString().indexOf('arguments')===-1)){
  75.                                                                 XL_CLOUD_FX_INSTANCE.setFeeParam=function(){
  76.                                                                         //console.log(arguments);
  77.                                                                         XL_CLOUD_FX_INSTANCE.userType=1;
  78.                                                                         setFeeParam.apply(XL_CLOUD_FX_INSTANCE,arguments);
  79.                                                                 };
  80.                                                                 clearInterval(inter);
  81.                                                         }
  82.                                                 }
  83.                                         }
  84.                                         var inter = setInterval(hack,100);
  85.                                 });
  86.                                 tips(function(node){
  87.                                         if(!node){
  88.                                                 return;
  89.                                         }
  90.                                         node.className += ' tips_inner';
  91.                                 });
  92.                         }
  93.                 },{
  94.                         hostnames: ['vod.xunlei.com', 'vod.lixian.xunlei.com'],
  95.                         pathnames: ['/list.html'],
  96.                         fn: function(){
  97.                                 UTILS.proxy(function(){
  98.                                         function hack(){
  99.                                                 var Login = window.Login;
  100.                                                 if(Login){
  101.                                                         var getuserinfo = Login.getuserinfo;
  102.                                                         if(getuserinfo&&(getuserinfo.toString().indexOf('arguments')===-1)){
  103.                                                                 Login.getuserinfo=function(){
  104.                                                                         var opts = getuserinfo.apply(Login,arguments);
  105.                                                                         opts.type = 'vodVipUser';
  106.                                                                         return opts;
  107.                                                                 };
  108.                                                                 clearInterval(inter);
  109.                                                         }
  110.                                                 }
  111.                                         }
  112.                                         var inter = setInterval(hack,100);
  113.                                 });
  114.                                 tips(function(node){
  115.                                         if(!node){
  116.                                                 return;
  117.                                         }
  118.                                         node.className += ' tips_index';
  119.                                         for(var i=0;i<CONSTANTS.browsers.length;++i){
  120.                                                 var browser=CONSTANTS.browsers[i];
  121.                                                 if(browser.match.test(navigator.userAgent)){
  122.                                                         if(node.querySelector('.tips_browser')){
  123.                                                                 node.querySelector('.tips_browser').className='';
  124.                                                         }
  125.                                                         if(node.querySelector('.tips_browserType')){
  126.                                                                 node.querySelector('.tips_browserType').textContent=browser.name;
  127.                                                         }
  128.                                                         if(node.querySelector('.tips_usage')){
  129.                                                                 node.querySelector('.tips_usage').href=CONSTANTS.usage+browser.usage;
  130.                                                         }
  131.                                                 }
  132.                                         }
  133.                                 });
  134.                         }
  135.                 }
  136.         ];
  137.         var hostname = location.hostname;
  138.         var pathname = location.pathname;
  139.         for(var i=0;i<ROUTER.length;++i){
  140.                 var item=ROUTER[i];
  141.                 if(item.hostnames.indexOf(hostname)!==-1 && item.pathnames.indexOf(pathname)!==-1){
  142.                         item.fn();
  143.                 }
  144.         }
  145. })();
复制代码
头像被屏蔽
发表于 2012-9-4 19:44:56 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|免费吧论坛

GMT+8, 2024-11-25 03:40 , Processed in 0.019188 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表