|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑 / k4 r6 |; V1 D
8 m9 a/ f8 [( f3 Q
火狐插件,用猴子1 I1 A3 n0 l3 w, A3 J" m
5 G3 W! u2 M7 d
var debug=false;
' A6 o, n' `+ [* |7 g$ \ s: u+ Dvar CleanHideObj=new CleanHideClass();
+ m/ z1 m6 J3 b$ t* U0 C0 C" s( ]) A9 y! F
function CleanHideClass()
2 t% R" r( p$ T; {) e2 m, a{ - Q, w5 q0 m3 l. u
' S# k& W7 L! L/ h, ] this.on=function(id,bMZ)
- V" k6 v' P' r/ w; a, U {9 d( y7 M. ~* J1 \! ^; E4 E$ }
9 H, n U: @1 W V if(id == 0)
. r1 H K4 a( e$ ^. I' o. d7 c# w* E {
7 K0 l/ R/ l5 k% b& e var page=/* document.getElementById("content").contentDocument */document; " ~! w9 z6 l! v% [' h/ e2 H2 B. G
this.RemoveHide(page,"span");" _3 {9 x% h" L7 j. k6 _! \0 u
this.RemoveHide(page,"font");$ }" R4 \; B; R7 i. [
this.RemoveHide(page,"div");9 r, x. G1 N- n5 J# h/ o S5 U8 x/ w
this.RemoveHide(page,"p");6 H ], {% c4 i7 |6 v7 w$ ^4 _# _$ j
" G5 O, K& m/ S7 [1 p5 c }' Y6 e) |1 T" T5 D4 E& S1 s& K
/ ]4 s+ g/ d2 a! K5 e' P/ t b& f
}
{) W) I% q" B this.getobjstyle=function(node,prop)
( s7 S% j& U" F) j {9 S1 o; C+ l) s" V
try
; v! l/ Z# h! I: g3 Y$ \ {
. k2 k* k8 d% b& O2 p return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
; F C3 Z2 c4 S; p0 v/ J }
4 E& Y/ K# U1 F N# y catch(e)+ V0 t* q* J# m' g2 \# ~
{
+ h/ F8 J6 Y- |6 J if(debug)
! I5 \& P0 y+ ]' S! P% h$ } {
( f5 J D# b: J1 k! S- M3 K: f alert(e.message);/ K0 P- Y. ?/ ?7 B' d# ?0 B
}
# |' F/ Z+ `, G0 j5 u/ b2 L " k0 u$ g2 k9 i+ U9 h
return "200";; a8 Q9 v3 e u8 S
}
- y/ [$ G5 q( ^$ H v* p }
! V4 l2 W( Z' p % q7 T5 A* b7 |7 K
this.RemoveHide=function(page,objname)
/ g3 D K, d n$ k6 a6 C {
# J2 m/ ~* K% v6 P9 }) V. W; e: X try
- P; s8 u% s6 U7 k. t* { {
- B- |; Y. H. E/ Q& I var minValue=15;
: ?+ G2 Z% B3 N* w3 e+ ? var objs=page.getElementsByTagName(objname);
% z9 B) ~* i9 r
1 S2 u9 X' S8 ~& d" b9 r% e if(objs.length == 0) 2 A7 l8 L. J: u5 ~( @% \
{7 }; w5 v/ e$ }% q3 X
if(debug)4 r: U+ |# S% u" H
{
/ W4 O6 I& H, Z4 I r; F4 c alert("no object found!:"+objname);8 G0 ?" e5 \3 Y( x8 m
}
" u; l1 \0 y2 j2 }. Z+ v: d2 I }
$ H; e( ^% h$ G. K1 Y2 R8 C& e else
% u6 n( \: l" b {- g* ^; t7 |7 }, d3 c
9 G! h7 ^5 x. c: T for(var i=objs.length-1;i>=0;i--) , k+ d6 W/ A) J+ |) ?
{' w- f4 b4 R* u' z8 d9 C, I
var node=objs.item(i); ( N; B2 e7 J6 ]* P x: {
6 t. u7 l" m9 o a2 Y
6 [" O% @ L+ k L# } if(this.getobjstyle(node,"display") == "none" ||
. q# z, c, W* s! o# B. R this.getobjstyle(node,"visibility") =="hidden" ||
$ \# N) b, {' A& p9 D parseInt(this.getobjstyle(node,"font-size")) == 0) + \/ u4 ^' g% d9 J: q" M
{5 m4 m- \/ y/ l- ^3 O
if(debug)
3 J! @: n6 H) M2 H {
( A$ \* m# W8 t. |' r6 ` alert("remove invisiable!");
# G! ^ G$ e" L( @# _ }
4 |/ W$ T6 g$ O3 {( q: ^ node.parentNode.removeChild(node);
% S/ T" ?8 j- N" V+ F) T" t6 J 0 @0 s5 s' V# w
}& V& s- b/ [* X% E: l/ ~
else 7 J* U: m# ?+ l1 L4 T
{
5 V4 K4 t* _6 c% t if(node.parentNode) 0 p1 f$ T) F C" n$ k
{
: \$ I+ i5 I* c var orgNode=node;$ r4 {8 |8 C) g) L
var orgColor=this.getobjstyle(orgNode,"color")
; b- s8 o$ D f( G, F* O6 F, t- g1 R; ~ var orgRGB=getRGB(orgColor); ! G/ G/ d# I8 D7 `/ k; Y! M' e3 e
! ]0 x6 y- Y- P' J* u) M
var parentNode=node.parentNode
3 l f8 z" `7 O8 J' T, T var parentBgColor=this.getobjstyle(parentNode,"background-color");
" f) ?* K5 L0 b7 h& T 2 q: m6 a0 x7 f4 C: `
var isLast=false;% U: D4 o% l. S G
% W u+ L% P' I0 G) W while(parentBgColor == "transparent") 4 u4 G% w+ x: c; o6 a; J
{
' o& l) C" o( ]4 M% F * u. q; _) o* l# C }
3 O# t/ x0 U! @$ f$ B8 N
if(parentNode.parentNode == null)
9 O; D2 p' u- Q) Y6 @' U {
* @* T1 B1 c- g8 M isLast=true;& s# v5 _8 j3 Q0 |
break;
& y6 F: U& m2 M- o }
" l& {0 c$ r; T [2 K parentNode=parentNode.parentNode;4 e7 |8 i7 D2 t% M
parentBgColor=this.getobjstyle(parentNode,"background-color");. [- ]4 L( f& l4 B% ~3 Q$ `
2 i7 d- U; r8 G
if(parentBgColor != "transparent") : D% R R5 k8 N: s/ d2 U
{+ L& ?9 I! q- V8 T6 I2 l- T+ r: Y; t
break;) {% [* U7 M8 I- o( w5 B4 `7 J$ A
}- G$ o5 B* J: C5 ^0 J% V; e
}* v, _: @. w; |7 T8 l* \, n; ?$ N
if(isLast) : ^& |/ c4 `; Z6 Y' W- |/ u
{8 j( u7 x+ ?, L8 l
if(debug)2 C+ J- V) D( [; N
{7 q( t; D0 z: c- t0 O8 ]: ^
alert("last!!");5 E% O, {" \( c3 s8 W6 S
}
i. }* ^: N' U: v+ S6 R if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))
" E5 J. A0 c! X0 s" X0 m. r. y {
3 Y2 W) T: P* J0 D, o2 Z) [0 G+ ^ orgNode.parentNode.removeChild(orgNode); + h& v/ f# @# y/ ^; u
}
$ h( i8 g, q1 p& V% z% B/ B$ H }
7 y; z0 H, t: t else
, d* I1 G8 M$ R$ i. I4 C$ i$ ^ {
9 t F9 a& s# s/ E$ w d if(debug)' w4 ?; z) F5 Z5 o6 f1 i K
{0 u& K: a2 `. ^
alert("compare color and parent bgcolor!");; f! P% Z0 A" i1 q! ?9 s2 ?
}
5 ~4 R8 b) K5 ]+ N; K: Q parentBgRGB=getRGB(parentBgColor);: O$ ~4 w! L- @+ q- |4 ~
if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))
: `3 l1 K( `; o+ o: d/ C" e {
5 T8 |+ G; [4 S orgNode.parentNode.removeChild(orgNode);
4 Z7 M# m. [% m1 Z/ i }* ^3 g8 i! u! Z+ v6 O
}
0 `1 n/ b6 E* |$ U }% l9 S& ]& F! F/ x
}
/ T% v8 b! b6 _* O- x- z }
1 D7 T# K v$ }; i8 G1 K* l }+ B, S% k9 ?, {! U/ b$ x& ~4 i
4 C* Z6 s4 a' G5 B. X1 D5 D; S+ G 1 ^" r' K3 a! b5 h, z& c9 ~8 v
var itemFrames = page.getElementsByTagName("frame");
- U* C* r! [' Z% @6 Q. Y3 H9 v var itemiFrames = page.getElementsByTagName("iframe");
: L2 @% a" g" p2 a$ F
8 ]$ _5 @ c" [8 p* ` l& J7 x+ ] var frame, iframe;
" z& q1 }1 t9 c5 L; u1 s if (itemFrames.length > 0)
% H1 a- R: M \: w" a {
. V: v% p( h) G* b' h for (var i = 0 ; i< itemFrames.length ; i++) * c$ Z7 ~) c1 Y' t, T' ]+ X# k" p2 t l
{( H' K. g0 y; M* T+ _: S
frame = itemFrames.contentDocument;
- G5 M4 P! a9 M0 A' v this.RemoveHide(frame,objname); % I' ]6 T4 K+ e" ^/ A5 q
}
) m* f. \0 @$ [- m1 ~3 |1 m }
2 ~, h: B+ Y4 g* [, P+ B if (itemiFrames.length > 0)
! A m4 Q6 b3 f2 Z {
3 D! l5 { V1 \, ^, ` X for (var i = 0 ; i < itemiFrames.length ; i++)
( }6 J6 Z2 ^9 J; C7 N6 W7 \ {
, o1 y2 T1 N: x iframe = itemiFrames.contentDocument;
2 ^. _4 X: l6 B this.RemoveHide(iframe,objname); ) o6 K9 C7 a Y/ Q ~7 d" [( i
}
, t2 Z/ I* c/ }) H }
/ b7 l/ M+ c, B: ~8 c1 ^, H }
0 K1 y7 _8 M' l# b: @/ |0 S catch(e) V: `, H) c, x+ O& J$ x5 U" c
{
9 F; S8 ? [: E4 C! ~ if(debug)
) L8 @$ J7 X4 N' k) w& A# H {3 ? ?, ~2 C" {2 V+ W
alert(e.message);
- S6 {+ f2 C# n, | }" ]4 `% X/ @! H$ [$ q$ k j* ^4 b
}
6 w, f* @* T7 i, ]5 X. l& H3 P }% {2 f% Z: A! ~) ~+ o* T& ?) ]
6 g1 g+ m- b2 X
}! v8 C) @* X2 J2 v( T1 v
, j" p1 F9 ^5 H, ^
function getRGB(colorString)
1 d e1 W; B/ L2 i3 u{
% ^* W# `* |6 M. A0 O1 H7 E var RGB = new Array;
) K) t. B8 ], ~) @& _; K var tempSting=colorString.substring(4,colorString.length-1);' a) \) `; Z3 ? Z1 O
var tempArray=tempSting.split(",");% k: c- g, ~6 F' X! p9 v$ L
9 t- ^/ S6 U* r+ N
RGB[0]=parseInt(tempArray[0]);; [6 Z* h3 x; e) \, q. U$ c' ^
RGB[1]=parseInt(tempArray[1]);2 K' d( y' I, \% X1 n! y( r
RGB[2]=parseInt(tempArray[2]);/ i" F" }( ?# v; m5 D" D
1 x, ]5 L+ \) |1 S8 \
return RGB;
. N' w' q% O4 v7 r}. @/ w2 e: Z3 w8 X0 F: E- R
function keys(evt) 9 U8 ?; _- w9 j7 R7 E
{
9 f& |. L+ W6 _: w1 Z4 M5 ^ if(evt.ctrlKey && evt.keyCode=="81")
+ W" x1 I7 Y' h: T$ O+ v { / A( d3 O; t, d4 D! p% ~
CleanHideObj.on(0,1);, P% O& j& W7 t4 T9 ?( G1 U
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
; L2 @! L+ s* N1 W. e* x( `! t
8 j/ \, y( N3 r+ N9 [ } : C8 \" ]: U4 T& o$ _& P
}
?. h& W7 }! W2 M1 y p' \5 q9 Tdocument.addEventListener('keydown', keys, false); # ]9 {' g" b! U* N6 z. W* D+ f
GM_registerMenuCommand ('Clean Hide',/ g& P7 V# @! M: Z' [& z9 J9 v D
function(e){0 T. N% E6 ?, c5 g
CleanHideObj.on(0,1)
) h6 V" W, K7 z/ }. Xalert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
0 o ]. s) @; ^2 m, {6 P1 [; v/ y5 |$ G' C});! T; ] c; p( I
|
评分
-
查看全部评分
|