|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑
5 m7 u7 U0 g5 a/ F0 n$ O, r. l' F, H6 X5 P, H" z
火狐插件,用猴子
`4 @% h8 ^' j5 P" V9 I' T# Q! O7 }% F2 D. l
var debug=false;
( V+ c$ c E1 ?% U- S8 y9 e/ c$ Nvar CleanHideObj=new CleanHideClass();3 a5 J6 v1 e5 o }4 F# e# ]
+ D- q; z5 s \function CleanHideClass()
6 T+ ]0 b- m$ e" _{ 2 R9 I0 O1 W' x7 S% w+ d
% p v: h. ]: {; K+ r, `- G
this.on=function(id,bMZ)
6 ~8 q- @' w7 j$ l7 J3 s {( ^5 ~: J: @9 _6 e
' |: n2 i2 |; Q ~5 |+ v6 {' v if(id == 0)
* V2 @, |6 C& Z {
2 K" n& b# f3 U var page=/* document.getElementById("content").contentDocument */document;
- Z6 s F1 r/ C' U this.RemoveHide(page,"span");' W* O! p( ]2 u3 G. _& @, d% K1 f
this.RemoveHide(page,"font");# T' {! U& n/ k7 Q4 Z( E
this.RemoveHide(page,"div");
. {1 g+ Y3 f" Y this.RemoveHide(page,"p");
* X0 o3 x+ Q' c2 T/ u) \6 R3 b % S1 C; O8 S! I% w7 h
}0 ?0 q0 D0 u: m4 T8 d
- e* R9 c3 R! J3 ~# c; z& X
}- {/ K$ J2 F( { [$ y( p
this.getobjstyle=function(node,prop)6 e: x& Y) }; D; P8 M) ]5 w* I
{* z: v/ ?% I, { W# m; i9 r% a
try
' _$ v( U2 f! g7 n! B: O {5 j7 A8 T' e5 J$ y, G
return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
# [2 M+ t r: p8 L }
. r& x5 a( I. k7 r: q* C catch(e)) L4 X2 q+ N( h
{- i. [- O" Q l
if(debug)$ ?+ I7 t8 I7 i4 J
{8 k. p/ B; o) m
alert(e.message);
2 I8 O6 Q- W: ^0 j5 B }
1 |8 |8 v' c4 y4 U1 F5 e9 ^ ' g4 R8 r* `! E, i b" u
return "200";
4 F; e; k5 G# n6 D) x7 Y( [ }
4 f( p6 d- p+ P- O8 u/ [ }
1 i$ s$ Z1 ~ C( f+ x1 K* \ 5 q/ i9 B# f7 F! V' r P$ h
this.RemoveHide=function(page,objname)* q; M. k. t2 n L; g* l
{7 o/ I% V3 A, P9 K7 O8 |1 z Y
try
% Q2 q4 J) [3 ]# X& l2 u6 c) r {
3 |6 O/ a L; Z+ Y0 r# o var minValue=15;' n7 h. t$ d4 z2 q
var objs=page.getElementsByTagName(objname);
! m! c; f8 p9 s! ]1 A
H$ M' M) n1 b, W if(objs.length == 0)
0 C5 {; `& N. `! v" t: ]" a& C- d {" C9 `! u3 k/ u$ s- e+ i; I
if(debug)
4 `9 ~6 D8 _3 i. K- Y v: Z" C3 y {4 h. K% X% @9 `+ M+ h+ D7 B
alert("no object found!:"+objname);
$ v2 d% t0 k3 h/ B/ G: N2 Q }! Q0 x. e" b9 o& F) `! }$ ]
}
9 _0 `% ^: J# b/ G else' B' i( q( t2 p) J2 \+ _5 h
{
8 I4 T, ]: n6 J5 b$ ?2 p) A : l" j, ~$ v% [8 ?
for(var i=objs.length-1;i>=0;i--) 9 H2 N y7 @6 \, F
{
5 G3 }6 {$ P& r6 h var node=objs.item(i);
8 v6 C7 r+ I" ~8 N8 w9 u' K 6 O7 m% t. |! {
7 F% [2 D$ `8 s, K8 ~9 T0 G) k0 a
if(this.getobjstyle(node,"display") == "none" ||7 B0 t% M, A. f# D+ o
this.getobjstyle(node,"visibility") =="hidden" ||
9 X# Z! s1 o3 d" A parseInt(this.getobjstyle(node,"font-size")) == 0)
" _- N/ V5 a5 M& D( ]1 B1 G {0 C/ B* i+ [5 ~, N4 h% C8 F
if(debug)) z; H9 N: ]* O
{4 G2 @' [ K. l
alert("remove invisiable!");
# r& n% a5 m7 z( a+ S$ c }) n7 B4 \ z( m( L- ?
node.parentNode.removeChild(node);* j; h; X- O( u% N: X* a
- M& V: z7 K }6 Z9 `0 z0 p& K
}! s- }; i' {* d4 p0 f. m
else f3 Y& M' H8 T' D. y9 n
{
! T3 B' g, M& n/ ~ if(node.parentNode) 7 p$ u N( A6 F( v' u/ K R
{
4 i0 c: }5 K7 R# }+ j8 O var orgNode=node;3 e) ]) n( Z. R; E3 J
var orgColor=this.getobjstyle(orgNode,"color")4 ?* m& X ?* K' ]" d, i( ]
var orgRGB=getRGB(orgColor);
& p* a% E. x' X/ J: V 7 @5 h$ L- }0 A. H
var parentNode=node.parentNode
( @5 q% O9 ~+ G% X var parentBgColor=this.getobjstyle(parentNode,"background-color");
( s/ v+ F/ K# S3 Z# G8 ?
8 G9 }0 F+ k5 w( R3 f; E* u var isLast=false;
" a! [" \# y5 @% l" g W0 p( y
" F2 Y% _$ {& }( @# Z while(parentBgColor == "transparent") - e& h6 Z: K* H" m' H2 q
{+ _/ L) Z, }# V, ~ d+ i
$ t- C6 l; @( i: C7 Z9 \+ I
( ~9 c3 q- d3 z! I& ?: @/ q if(parentNode.parentNode == null)
; y9 O/ O- ?5 b/ C% C8 M {) {. M* l: ~8 x& ]
isLast=true;
, o- {0 Z% q, S break;+ K. ?/ V$ {& r3 z3 W
}$ x0 c1 U; u* @! ]% B+ @
parentNode=parentNode.parentNode;
& M/ @+ u- G& S& k7 O. L parentBgColor=this.getobjstyle(parentNode,"background-color");$ A- f. R9 L/ |7 V( M1 T6 y2 P0 V
# k* b/ z/ Q, ^2 V- C$ \ if(parentBgColor != "transparent")
. r. I# u# i6 e) R {
" B0 ?! |9 b- y5 z# K break;
+ {, K# V O9 y' t0 o. `7 a }
4 g1 t9 ]1 d6 A- I: f9 Y1 u# ~ }
" Q- I( O4 J1 y8 q" j- | if(isLast) 7 l; q) P* U$ N: E. g, X& A; L: ~% _, P
{/ q6 s5 P" r2 Z6 I i
if(debug)
$ d+ {; s+ J# H/ _ {
5 c0 k% x, O1 y3 h alert("last!!");- `5 ]& f8 Q2 ]& k0 r
}
: T+ K3 ?3 W& D if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))
* b+ D; `- `8 d& }/ _ {# ^0 O2 o3 V7 z( C8 ^0 ]2 n
orgNode.parentNode.removeChild(orgNode); 6 K. C- C- W( U( S$ ?
}
# E" J/ B1 r w1 o( y( B' z% O }. L% y+ s1 l! V7 g
else
7 N$ `! e2 n6 I. ?0 d" I {0 z. q0 j2 E0 J
if(debug)4 K- a; |* G5 X& e5 Y
{
* e" t9 }9 t7 t2 E: D alert("compare color and parent bgcolor!");
) X' ~4 Y) d/ V }
( e3 j( m( A3 L' C, V parentBgRGB=getRGB(parentBgColor);
I( \; o1 n& X6 p% w$ a* U if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))9 r+ ^: o! J# b T3 S" j
{: ~0 Q* t* p Z$ p! _. M0 z# C4 U
orgNode.parentNode.removeChild(orgNode); ( W1 G1 B9 I- G! I1 C8 U: T2 \7 k
}9 F2 }" h# L8 k
}
% M7 j: _; u" W& A" n }
& S S5 L% S/ t* f }
& v7 b- O- w. [- V' ` I; s6 x }& @( ?1 t3 F8 H
}
$ O$ T. Z x4 [7 e0 W9 |# t
2 X; ]; A3 F1 K$ W: h: p9 W : B5 n+ ~4 b6 J8 t8 {) D6 \9 x
var itemFrames = page.getElementsByTagName("frame");
! M4 K/ l: x g0 ^ var itemiFrames = page.getElementsByTagName("iframe");" ]* C$ h9 a: g; R9 _' G
/ ^. X7 M( I# {% `) @7 y
var frame, iframe;
# H* n, l! j* ?5 i) u if (itemFrames.length > 0). g7 G/ }' b4 g; b8 ?+ O6 c
{
5 t9 q2 M9 P! X q% Y: i# f' P& d for (var i = 0 ; i< itemFrames.length ; i++) C5 f2 N& D6 h
{
1 h. _- C! {/ {/ O frame = itemFrames.contentDocument;
; Z0 c+ W- Y( c \ X this.RemoveHide(frame,objname); ! p% q8 |+ D0 X4 j% n4 w
}/ ]/ D1 ^: l0 Q6 g, ^3 h& n
}
% L2 H$ L+ A% U* L6 R, ~( ^5 G" Y if (itemiFrames.length > 0)
0 a) m/ H2 q% W! `- @/ } {7 l; v3 d0 z6 s+ m8 D4 v* {
for (var i = 0 ; i < itemiFrames.length ; i++) & J. `* b# D8 n* {, n6 W
{! I, W- ^ q7 d4 R2 \9 B* X
iframe = itemiFrames.contentDocument;% F7 b+ v* G9 G: D" J1 @
this.RemoveHide(iframe,objname); - W4 ]: T3 E8 a+ ] N. {
}% q- n4 m0 X" z% [4 \
}
/ i# i% D, L7 r' O, F# I }
) J2 O" h. A+ R. B% o& } catch(e)
8 f. q0 f+ ?, {) C6 e" A" h {. _% k+ [- g7 q, L, P0 Q) m0 u
if(debug), ^% q0 s3 g3 h+ O
{; j* h9 X" d* {" C- m
alert(e.message); O( g/ H7 `* N0 G# B/ o
}" j; v3 U) C: T3 L
}- S. e3 l: w: z+ ]6 y* W* F9 u! x
}& r2 ]7 S- T9 n% z! _1 ^
& [! f- ]9 _8 Y# n" `}( L; `3 k3 W( d1 O5 Y
2 p7 }, R7 \/ v& |function getRGB(colorString)
2 B s' C" h/ S7 R) e{- ~) L) j ? O' W h
var RGB = new Array;7 Y) Z: k5 a4 s5 i. y, o; M0 X
var tempSting=colorString.substring(4,colorString.length-1);
^$ L$ I# c2 C+ K var tempArray=tempSting.split(",");( ~. X4 C* J: k" b
' |9 z. V3 [3 c- K' `' W5 C( u
RGB[0]=parseInt(tempArray[0]);
$ T% X% Q# u% y RGB[1]=parseInt(tempArray[1]);
$ G$ E( q8 d9 y' z; Z RGB[2]=parseInt(tempArray[2]);
, v' h+ T6 M2 J& W. [" b9 l 6 f' l, i- E" ]8 P0 r/ N! z5 [2 ?
return RGB;
) v% c1 |+ f% T& |9 J8 |7 b0 _}
4 F# Q2 k# R8 B4 @6 Kfunction keys(evt) 4 ~8 V4 v! ?4 _' V
{ - `8 T4 J& C; q6 X3 Z
if(evt.ctrlKey && evt.keyCode=="81")
" m/ X$ N/ A+ `" f" E3 Q { 0 m" Q1 R4 V/ D
CleanHideObj.on(0,1);% j& W' |1 I2 B. Y# R. X
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
7 F5 E1 }1 @4 f: M7 p4 D% W/ p 8 l8 {1 x0 O6 o6 K. U) D
}
" ]7 B2 u8 \( p0 R7 z }
; g# o% u) f* f+ Idocument.addEventListener('keydown', keys, false); * G; a8 l# @* i3 ~3 O& J6 k- L% M
GM_registerMenuCommand ('Clean Hide',- V5 W) f) {6 p/ r$ P% F$ J+ R' c
function(e){
0 x" @) \& ?5 J: q1 c9 `9 ICleanHideObj.on(0,1)" j1 B6 G3 P" N0 g/ d
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
- F2 e( s0 |: v7 x9 n1 K});, W' J5 P1 [! v- \6 U( w5 r
|
评分
-
查看全部评分
|