|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑 # K# S* ~1 p) ]; V7 Q7 m
# {; d: s/ x) w D) B火狐插件,用猴子
/ q9 K7 m( X# I: e
; f! G. C7 o# a* X3 y1 O" _, Vvar debug=false;
y8 Y) G1 h! f. {" z3 Lvar CleanHideObj=new CleanHideClass();
1 p- T9 [/ b* Y0 a9 |1 D
: r6 V( ^, ?) m/ ?6 R' g7 `function CleanHideClass()
( f4 }$ ]1 u; d( i. ^& v{ : W6 a4 H4 d0 k7 k
- a6 @# p2 m( t3 V. Y/ c+ O" e this.on=function(id,bMZ)
3 ~% O$ w& C5 g# _$ ^& Q+ g% @ {; e p, K5 a5 Q" p
6 ?) `6 k1 r4 u7 S; j if(id == 0)$ s7 u0 o( M$ i/ C
{
3 j) v# L9 P( k" J var page=/* document.getElementById("content").contentDocument */document; 3 ]5 X8 {% `8 {) T2 T
this.RemoveHide(page,"span");
" s. C$ C+ R. I7 R( @$ ?* b; ]% m; E this.RemoveHide(page,"font");& N5 w6 n) R0 @ Y
this.RemoveHide(page,"div");3 I+ L2 i$ u" c" m+ n
this.RemoveHide(page,"p");
8 n7 L/ c1 n, H" [
, o, B: b- k6 }6 D) d }
) d. q; v. g! g0 h6 z0 ?
9 y7 h: T9 p" ` h0 N) J* @3 a }
) z2 M2 ]( O, L7 V' h' U this.getobjstyle=function(node,prop)
5 X% |- f% }: p9 I9 z( z {; y; L! f! n9 i. y# y" n9 Z
try$ W# t6 N, r( T0 T3 K; s+ c
{
& D2 {8 Q0 Q, i4 W# ^: D return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
5 M P1 t. }6 W, a9 B" ]- k }1 ] s9 a$ U& ?- I
catch(e), o) n( Q6 ?6 G5 b1 d
{8 _8 c" x9 g0 O: f
if(debug)
) U' h2 ?, G$ _; a$ }' [3 r" Z {2 w4 N/ \9 x% y5 Z; g: @
alert(e.message);
' G+ v2 p$ x( T$ S; D5 d }8 u7 j7 i9 y- ^9 A; U K9 y" w
8 T" a7 a2 k6 x8 C! e return "200";
: ~! ]: t5 S5 ?. K9 g: Q }
. g( S1 U. o4 V }' b! A$ c& [0 ^" \, j# i8 ?
8 P! ?* O) V1 G2 ]4 I1 P this.RemoveHide=function(page,objname)
3 ]$ J. W9 {! J* B' x {
# x; g' H2 \, u try3 M+ C7 R/ f+ u
{! M, |+ a1 E- ]; U8 s
var minValue=15;
3 _/ E6 U1 ]' Q. f% H' G var objs=page.getElementsByTagName(objname);
2 w t9 G) A O- }: C6 Q' e8 z; k) O6 S" D$ R' ]9 h
if(objs.length == 0) " Y' e( M% Y) A0 u
{+ y$ E1 @7 }0 P. |5 K
if(debug)0 ?; F w, q! d6 C9 `3 j" y
{9 |& z( \/ D; q' j' v
alert("no object found!:"+objname);
+ F& |5 ^: m* _) W1 M }) Z7 {0 [4 s- I2 m$ C4 y7 B
}; A9 J2 L, a1 e% D( S: m
else9 k$ P! b8 o" Z$ I% {
{! Q5 n8 M9 ?8 y- u( N6 P
" X7 u# }% h: @' t; }% P O( q
for(var i=objs.length-1;i>=0;i--) 6 H, `) \& w1 Q6 Q/ Z
{8 L/ ^1 r' c, Z9 @/ V' L
var node=objs.item(i); ) P ?$ j8 \/ Q; [
/ h6 _6 {9 j- Y8 _3 q
9 `. l& n+ h4 U7 L( L/ n if(this.getobjstyle(node,"display") == "none" ||
' {1 \2 s! A8 J$ V0 g this.getobjstyle(node,"visibility") =="hidden" ||1 @ s/ A }; f! [2 S$ R1 |8 x
parseInt(this.getobjstyle(node,"font-size")) == 0) ) W' M1 n- P3 T/ P7 r. v) U0 M
{2 Z$ _' r, h5 @" d7 k
if(debug)! V' z; b3 P% c
{
3 L3 e& M4 ~& x6 H' V alert("remove invisiable!");
- H. d# r( v6 u2 g }: B) B# E0 i( f+ Z6 \2 N6 p
node.parentNode.removeChild(node);
! @- g' k( |3 V7 B+ \' I, H9 \; m ; v! Q# e! v; @! i8 x
}) r U( g- `2 B! S0 R# \
else
/ d7 X9 X V: E( i8 X. c2 N4 Q, ? {
; U8 \8 Z0 Q0 p8 v7 C( j4 y2 h2 l if(node.parentNode) / s: W9 U+ L4 u/ |2 v
{! y. y7 B. y/ y9 p7 d1 s
var orgNode=node;4 q2 g5 D$ O# M4 |' P" r7 [1 q
var orgColor=this.getobjstyle(orgNode,"color")
! ^+ |0 O! r, w" r8 c% N) l" N var orgRGB=getRGB(orgColor); 9 c+ h- ^3 Z& w/ O7 ?1 g, o
3 }+ v. V/ ?3 K; g: V$ L: ^+ ]
var parentNode=node.parentNode
! U/ @5 v( i! J' m$ o var parentBgColor=this.getobjstyle(parentNode,"background-color"); \ `* w* w4 u {) B+ O4 I: R
7 t" i. f" g9 [
var isLast=false;
$ H, c* N& t: B8 m- w3 O: ]
: C; L; w3 x0 X: G$ w while(parentBgColor == "transparent") . S, Z$ S+ M- H+ X, E: i" B
{5 z! s0 X* {9 c$ K4 o- R1 ]6 C
2 b4 _# L' R/ U F" c( d6 I% X4 {
if(parentNode.parentNode == null)2 m5 Q7 ^+ X' I% C" k
{4 k9 W; e n0 a; O8 t
isLast=true;
- q0 T# o6 P1 E; \: l3 e! f break;; k" C& K; A/ d9 S* I X
}$ G1 K) O' ? l3 e9 i
parentNode=parentNode.parentNode;. c7 W) }7 V( ~0 b" m1 K( e; ~; |% i
parentBgColor=this.getobjstyle(parentNode,"background-color");
1 Q v+ ], |8 _- s6 W+ m0 }0 @0 [1 p6 i7 ~
if(parentBgColor != "transparent")
: e' Y* q, p) S2 G( ` {! ^. \' s n2 u: Q! z* |
break;
s) f8 M2 F7 E }$ N! w" f8 I4 Z8 f; n* I: ]/ D
}2 M. N. p- u m' s! F
if(isLast) ; A" U! [2 u5 R3 g: v
{
4 d( I# R) u0 R2 o- k2 T8 h6 i if(debug)# u! m, E; _; U9 u1 Z4 }
{: m0 m* u$ D6 v$ ^# a2 |/ f! d0 J9 L2 O
alert("last!!");/ e9 r& P, I" H- \( e# y9 J
}; W! Q& |, M+ n
if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))
# O0 P) U; `' P {4 q3 _# z% S6 _6 h0 I% J5 p
orgNode.parentNode.removeChild(orgNode); 3 ]- L q5 k4 Z# d! o$ R
}
% X; E6 M1 n7 I }
$ Q! B P- `6 b else) H o+ X. H( u+ b
{2 Q; v! ~) g- `$ m$ \8 I
if(debug)- v- S3 G# Q8 b, z" G
{5 n/ C1 V0 K0 ?8 g
alert("compare color and parent bgcolor!");, |8 g# G# _9 h+ V0 Q7 a
}; j0 ~* G; g+ M7 k
parentBgRGB=getRGB(parentBgColor);
# c: U: U( v& p9 T if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))
. H/ {3 w# x/ g7 l5 S. Z5 } {
2 R( |4 ^, D2 |7 `8 l, F3 z# k orgNode.parentNode.removeChild(orgNode); 2 w# U8 Q7 q' G
}
& {7 Z i% R, l% v7 _ }1 y5 C4 @: U) t% g$ k7 x+ @* a* k& R
}/ [/ ]& t7 n; I p9 O C1 X! q: V" C, Q
}
7 L: |, v7 b- a" q: a+ { }
6 w7 w9 W0 K* \ }
K& ]; \5 \1 F0 _$ `# k$ Z - s' r( J7 X- J# K) h
5 |# F* l/ s! a8 R, Q& f var itemFrames = page.getElementsByTagName("frame");9 C4 y, Z4 b8 k) D. o
var itemiFrames = page.getElementsByTagName("iframe");
/ b, w% k' ?, X
! G3 J1 C4 P! m0 e+ I+ R var frame, iframe;' s- C) y: H p# X8 i
if (itemFrames.length > 0)9 a1 U$ W0 G! k L) |
{7 l7 L. [! A# s2 U
for (var i = 0 ; i< itemFrames.length ; i++)
2 _% Z# y0 n3 j5 B& k {1 h3 g. w+ r" y2 J( _' I7 o
frame = itemFrames.contentDocument;
4 P7 g. f6 p% i2 { this.RemoveHide(frame,objname); 9 f" Y. a% I. E0 n1 R8 a
}
' T- l3 u Y5 Z; p) x/ ]$ r) E }% \: I& o" [8 P
if (itemiFrames.length > 0)* y; c, u" T- I/ e) R
{" q% S, k4 ]' P+ Y, ]
for (var i = 0 ; i < itemiFrames.length ; i++) 2 @7 l$ D, U4 y8 F
{
0 a1 f# ^! v5 m. U: ~4 m$ S( A iframe = itemiFrames.contentDocument;
& m" e1 p2 W% Y/ D; ^ this.RemoveHide(iframe,objname);
' R5 V7 n4 F) u4 f# u6 [ }. D. d1 D3 C' y/ x% W
}
& D6 k& ~/ I/ j% `' z }
7 s! r* l+ p" u, t8 `* D7 w0 Q catch(e)
4 Y( m8 W1 c. E {
J- e9 N- ]7 | if(debug)
; w# j1 \/ V. O5 e$ \) e% m6 r {
, w0 f' ^9 p4 c$ N/ L) T$ }; O alert(e.message);9 q! |2 j4 x N+ ]
}! E! Z0 v; E' K" Q1 q7 x
}
3 G" Z- s h6 F: V }
A4 t( K- M4 P4 M
. y3 M& _$ V7 Z2 R}0 F4 \& u( F. a8 S" {" W' X
0 U4 F W* Y" i+ ?/ f! {. d
function getRGB(colorString)$ X) G) Q0 M# w6 e* f' ~( l5 J% \6 ]
{- _9 _* A) W5 |& T( f
var RGB = new Array;
F& h! ^8 [' l" \ var tempSting=colorString.substring(4,colorString.length-1);& x& K8 ?3 m- j1 ^' d) r
var tempArray=tempSting.split(",");
! |2 Z% O$ l2 U2 l0 X/ `: w6 G9 ?* L. Y
RGB[0]=parseInt(tempArray[0]);
2 w: y4 t6 |# V! x2 T RGB[1]=parseInt(tempArray[1]);
1 |' ~ R! x/ h8 y& A, W RGB[2]=parseInt(tempArray[2]);1 c* s- B( \0 a7 h6 F) x1 m8 O
. i- ~7 u, j k7 [) o4 N
return RGB;
* q5 Z# n3 G; F# V}; W. [# y6 O) I2 {7 Z' Z y x
function keys(evt) # V2 a% a) k; e/ E! R7 y
{
% ^" K# A& f/ l) h$ `* L; d if(evt.ctrlKey && evt.keyCode=="81") " J$ _0 R$ _& c$ O1 d
{ / i3 n& V" p% k" t
CleanHideObj.on(0,1);; k5 r. T0 ~ H2 g4 I# r# }
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q"); . R7 o% e! M6 B9 E6 l4 k3 k
' c$ U( U& r) c) E. C$ I
} 5 h4 H" c. S3 i, t* V6 @
} : }# n& Z3 ^4 @" |9 F( Y0 l
document.addEventListener('keydown', keys, false); % o* m, N- g) q3 k+ A. Y
GM_registerMenuCommand ('Clean Hide',* Y) z4 B7 H% ]: t( r8 Z
function(e){5 u* u" T. q" S7 ~+ ?/ m1 t
CleanHideObj.on(0,1)3 ^0 m3 q, b) c% _; t7 ]+ |
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
- K2 ^9 j1 i2 i# T; z});/ R+ K$ L) g& P+ z& Z- @" w
|
评分
-
查看全部评分
|