|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑
0 r" ?% C+ i; P( R7 n6 k9 U8 w9 G& |( n) E% z6 F O, i& d9 C, j
火狐插件,用猴子
) O/ F& `* N5 y3 _
: a6 Q1 f) H* Q" b! D0 A( Jvar debug=false; 0 P6 A$ r* |6 l' ^
var CleanHideObj=new CleanHideClass();
* i1 L/ r- J( p7 U2 Y
! H1 j& z. l) F& j" Pfunction CleanHideClass()
; g9 l3 ^* R# F& b{ ) A U7 J9 i4 h. W1 q& B
' J9 F3 z i4 f9 {5 T
this.on=function(id,bMZ)
$ |4 Q* @! y7 n# i* A& `/ L {! z! |$ N" Z$ N
6 Y! w% `/ q0 ` g0 k
if(id == 0)1 Z$ M5 y3 A# U' @( S0 V: @( X
{
6 ?; l: c c/ c var page=/* document.getElementById("content").contentDocument */document; / N7 u* t/ c: K9 Y" M& G# y6 ~
this.RemoveHide(page,"span");6 K0 _# l; N2 H l+ u% B
this.RemoveHide(page,"font");0 \2 d5 j) k: u% l
this.RemoveHide(page,"div");
4 ~: D7 N x# R$ _3 G this.RemoveHide(page,"p");
. w e3 }1 x* U ?8 a; e) B
] |; |; H5 K1 I }
1 D: m" k7 i7 U% ~3 v! y- a
; ?9 ^6 K9 f6 o8 |' s }
3 V0 P0 j, Z9 y d( ~4 c- ?. V! T# j+ S3 b this.getobjstyle=function(node,prop)
4 B2 `9 P3 C9 ^! `6 X {9 j% j% f7 |( J b0 H+ I+ G
try
6 w5 c9 D s! k' x {
% Q( n. E# v) n6 D, W2 W return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);' J* x: n, }3 m# D- N
}
/ r n% q; j& u; w3 k1 `- ?2 _ m0 n catch(e)3 y; n3 ^; M! U4 u' t
{
/ L9 s0 D% L2 a2 h' ~ if(debug)3 }8 z" `# [: F4 y2 m0 T
{6 N: l- `8 O# y6 N" t W
alert(e.message);, X! b" a% q8 C5 X0 [1 U8 `
}
( q5 ?) c+ u, P6 f& t
7 q6 d/ s# x( G& I; D* I, ] return "200";( v, H7 [- ^8 u5 s2 O8 N$ G. {
}7 W1 i! j9 O) r& [1 d+ o9 X, F9 o
}
. ]( e' I9 _& G3 M$ z& g7 o 5 U( v& S9 O" }* X7 p0 V
this.RemoveHide=function(page,objname)
( e- j% B+ ~$ H0 J {
1 K3 y. b; {9 ?" P u6 S8 q try2 Z D* }/ E" a% @7 a
{
8 p0 {$ ]( ^% | var minValue=15;1 T+ N6 N2 K- m, K2 {$ s& o
var objs=page.getElementsByTagName(objname); ! h8 H3 O# |' ^+ N" d# h8 ^1 ^$ Q
$ B, d# l& c, ` ?* L
if(objs.length == 0) % a1 J: ^8 x+ }7 M1 v7 z6 f, B" H6 j
{! L ?2 _4 }+ `$ c2 a- ^ j9 K
if(debug)+ [% `3 T4 z$ b0 j
{7 f2 E0 h. Q! k. D8 y6 O3 `
alert("no object found!:"+objname);1 H0 f% b# @% z; @5 E; X# Z
}3 a2 p: Y- c% j, j, }9 U
}" _5 V2 ]/ ?& x7 t
else; h2 H: b: s7 e3 }/ S- z
{
3 o8 l g+ S! g7 x+ O ! O9 |8 e g; ]) [+ R6 f' _- y3 h! X
for(var i=objs.length-1;i>=0;i--)
7 P5 ~5 N$ s/ ~2 E- j {
5 k9 f& ^( d- m @- P5 i1 Z var node=objs.item(i);
8 \0 i8 P' P8 r5 A' x: [
. h: k/ Q2 \( B0 l2 C
( p+ q! L& V% R- U if(this.getobjstyle(node,"display") == "none" ||" Q) u+ J* C# W( y
this.getobjstyle(node,"visibility") =="hidden" ||+ G6 M; i5 n# `! _4 F; p! s
parseInt(this.getobjstyle(node,"font-size")) == 0)
5 `) [! D4 z0 ?3 W; j! { {
0 ?: E* c, g5 L& F9 y9 X7 w if(debug)! r; a0 D- |* r' h& q/ U
{5 I% B7 f0 o: d0 [
alert("remove invisiable!");
& u( |) @3 ^7 B3 C }2 |( e% ?6 X! i) m8 i& o. J
node.parentNode.removeChild(node);
1 X3 N: a1 l, [7 j
3 H' W- `$ n" C( |% z }
# x& }" q: U i5 Y: P) g else & R; a, x. d! |% n! }, ]. Y
{
4 ] J6 W& c- p% B$ D; H: J if(node.parentNode) 8 i4 r3 ?4 w& @/ L" f, k
{9 p. m8 l6 @0 _' E% X
var orgNode=node;# K0 D$ v- k2 J; ^7 m8 g" m
var orgColor=this.getobjstyle(orgNode,"color")" n6 N$ B3 \. v2 d
var orgRGB=getRGB(orgColor);
3 D: N0 E% e* t' Q7 j . @+ |2 J! v1 O9 `7 i1 a, R
var parentNode=node.parentNode
: F a* l- O, W: P4 ~# g7 T5 a var parentBgColor=this.getobjstyle(parentNode,"background-color");
u7 d$ K$ j' i x
: |2 P- H; c: Z/ s8 B* w var isLast=false;" ^/ _. x4 y+ r- j6 h% Q
8 L2 M" Y1 \0 X# Z; b while(parentBgColor == "transparent")
6 E5 P8 y. u4 R/ C) W) T {/ Y$ z4 c/ w% G. t) ~' F
( C, b$ ~- G ~0 \( g
: |: E; c6 V* c; V if(parentNode.parentNode == null)
8 E* k4 i) T( T* W* |' @: ]( O {
$ b4 K0 `: N4 N( W isLast=true;! u: D, I+ ?: @# Y% O/ ?
break;
* \8 O4 |7 g( `; p# P4 S }
( ~# U- u3 f) F, e, |" @$ l9 Z4 g parentNode=parentNode.parentNode;
( r1 Y+ r0 Z4 g: J% q- ?, c% s parentBgColor=this.getobjstyle(parentNode,"background-color");- J$ D" t5 C- _: K
' ~' x2 y/ ^8 i if(parentBgColor != "transparent")
% g+ ~/ u: x' h' m, v" _ {
9 b5 e1 ]! J1 w) G/ j) K t break;
: k& Q6 z: u n5 B" P. c$ F }, v9 s- ?4 B1 t- `8 T
}
$ ~* \# m4 A, W a; @/ I if(isLast) . ~) R( N0 R5 ^# p0 s. h4 j1 H9 r! I
{) N' ^* U+ I0 s. S. a
if(debug)
$ i* \8 H& ?( V5 d. L6 O {
( z+ M9 [) L# S8 s4 y alert("last!!"); h9 @4 p6 c& W4 x$ t' V) v: @0 E. ~
}
8 ~/ j: h& I1 c) @( ^3 S if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))8 |9 X4 ?9 U5 b1 x9 j
{" k7 L# v% }$ Z+ A
orgNode.parentNode.removeChild(orgNode);
: K0 d4 _# w- V. p a& x, ]2 } }8 ?9 W i4 b" _9 f. }
}& @/ R5 T1 J; K" }4 u% n
else
. S4 N3 | B# e4 m2 O {) ?" d( K4 k2 q2 \4 j
if(debug)' `% Z3 q; D5 y9 \- E6 @
{5 q# ]: i5 D2 b/ ^# W
alert("compare color and parent bgcolor!");7 V8 `# m% Q" ?- s9 R4 S- }& A
}
8 F* _5 x4 R8 E- T* k/ G parentBgRGB=getRGB(parentBgColor);/ b8 p4 C; |( e( d( `
if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))4 N- Q. `' h9 H' w
{
- u, b. y- P) g z" e orgNode.parentNode.removeChild(orgNode);
+ N( l8 j2 f9 f! _# M }3 |7 P6 @* H/ H1 o
}; H- v# X4 |9 B4 K
}
! C8 Y2 W6 C- P- [. S0 z; h }
. i+ y) Z1 r' C }
0 p4 _% v g- [4 ~ }
" H2 T% z$ u& s$ g- u& r$ H2 A & ~! F0 J8 |) p
1 g# u& u+ ^1 v; @. F var itemFrames = page.getElementsByTagName("frame");! A+ T2 h0 q6 F: ~7 i9 v
var itemiFrames = page.getElementsByTagName("iframe");
4 H+ k$ q' P, B
& f) A- I( h: q; O& x! { var frame, iframe;6 n" |! f' T4 I# c" B @; n4 s
if (itemFrames.length > 0)
- n% O; d. q+ f3 o& M( E# S { X" N! e" {0 M4 B
for (var i = 0 ; i< itemFrames.length ; i++)
* O" i) K% s! R1 F/ k {
* `5 |9 p/ P" o& w9 A8 K3 h+ z& d frame = itemFrames.contentDocument;1 a$ F! V- `5 M. ^+ M
this.RemoveHide(frame,objname); 6 }/ O) x) i3 i5 ~8 A
}
G# J5 Q3 c- i' _2 r$ K2 r }% }7 A {1 b a; T
if (itemiFrames.length > 0)( J3 u9 o! J8 s6 U- r; S
{
F( u1 h& }' Z4 Y4 u for (var i = 0 ; i < itemiFrames.length ; i++) 7 v: s9 |8 a: S2 U @
{! E+ o0 b7 l& c3 z: ?) n; G
iframe = itemiFrames.contentDocument;
$ Y7 w) w& e% C this.RemoveHide(iframe,objname); / m/ ~, @* C1 s( v* q
}% R! }* @) `( T' s
}% z' b5 C& S4 n& X+ ?) t# o/ Y8 V
}2 \) {, s2 D) b# m' j' u3 O% @9 G$ R
catch(e)
y) e' z( e) E! `7 m% v/ N {
8 ?, N" [8 `, Q if(debug)% R4 t3 l# }% Z4 O2 m4 ~8 O* @
{% M0 C3 O& \! {3 X0 U
alert(e.message);4 `* H; I/ k* t; L
}
% p+ i# N8 |6 a }
/ B4 T* E7 e% `# @1 }/ w }
0 F1 c5 Q2 j( V3 j
( ^/ z3 E, x6 s5 J+ T r0 f}$ g3 l3 B' ?1 E( X; E/ @6 a
( G! L4 {. g* x4 H' P k% D% Cfunction getRGB(colorString)5 H9 B) `( k( W8 ]( O
{6 K4 V4 Y3 N( L
var RGB = new Array;
7 t' _, x4 f: K6 N var tempSting=colorString.substring(4,colorString.length-1);. J$ i5 f" R" q
var tempArray=tempSting.split(",");( e% l; x5 o: R& b k+ z) d
( L# m3 c! x* a; }) r
RGB[0]=parseInt(tempArray[0]);9 Q8 p) r! w8 E
RGB[1]=parseInt(tempArray[1]);
3 T# p1 @+ h' \2 }4 j- k9 W9 u, ] RGB[2]=parseInt(tempArray[2]);, L: O8 C0 J* S! A$ r# L( a
- m8 x0 T9 X9 g- x
return RGB;
5 \. l! h- m" U}
% G' }. ~8 r3 q: F! w/ w7 r Kfunction keys(evt) ; s! X- A* u+ t+ B, z
{
# H& y! s# p0 Z- _, ~ if(evt.ctrlKey && evt.keyCode=="81") ! g1 V2 D! K4 O6 ?
{ / [0 F: t( ~: ^( Z+ E
CleanHideObj.on(0,1);, ]& j$ i \: W' I/ R& ]) h' G8 `9 ^
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
: y. x+ R/ J! r- E$ Z- ? - Q! \; b& `, B4 D! p
}
! q! q/ l9 A3 T" ?1 \ } 8 L# Z- Y7 P6 b: s7 @( o( O" a, M
document.addEventListener('keydown', keys, false); ! r9 L1 E5 n& \$ c0 O
GM_registerMenuCommand ('Clean Hide',1 p* d: I1 C" y4 c: e5 J( L
function(e){) p; l- p! ^% D5 ?3 E' ~4 c
CleanHideObj.on(0,1)2 U3 |2 B7 p8 D: C- a8 T
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
* \. U( ^7 ?* M* p; O});
& x6 ^, } P- _) W/ n7 j5 r |
评分
-
查看全部评分
|