|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑 - `. o. [: B' w4 T; O
# B9 s8 o, {3 Y) @" v% r# M7 l
火狐插件,用猴子5 |7 q+ z: S6 p9 ?' M# G* B! k$ s
% k5 u) e* d% }. B1 d; m) vvar debug=false; 2 t( X; j' {$ ^
var CleanHideObj=new CleanHideClass();
) A4 C8 e" y9 h$ ~! k
8 U( Q; u; ~# H% Kfunction CleanHideClass()
. n" |# T1 t& V{ 6 d" l) ], s' ` c+ F
6 ?. w2 B. w% R; ~
this.on=function(id,bMZ)
* I' b5 ?. C+ ?( [6 N7 K {- s+ q4 R" |$ b3 M
% C' K* f7 k! X0 K
if(id == 0)
0 {* L6 G8 |/ [8 b' j! G {9 j3 ?+ o* Z3 `. ]: _
var page=/* document.getElementById("content").contentDocument */document; $ q' L9 {. C3 i! {' C1 {& Y1 w. G* E
this.RemoveHide(page,"span");
+ }, f9 h; K; S9 ?( H3 f0 p this.RemoveHide(page,"font");# n% M4 b! l6 l3 M) t
this.RemoveHide(page,"div");
8 I: J+ |4 ]1 x' s/ J! v8 W this.RemoveHide(page,"p");
2 {: T) P1 u. U$ l v( E+ d) ? - Z& G2 U7 i4 q1 t$ s; g
}
: ^8 e, y: y* A" W) p
$ P' K9 o4 P7 K/ l, X! u }
+ B5 O0 m+ d, E1 l' } this.getobjstyle=function(node,prop)
# Y" y% K% G! L) {* [8 D$ q* U, i {! ^+ R- v- z1 J% u" e) h6 g
try
5 l q0 F9 Z- G8 C {( X: N$ L7 W/ o8 R+ L1 Q( p
return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
! \ Y o. @7 ~, T }
& J) `" B; T$ l9 H* U2 J6 R! w1 M catch(e). F: a+ e5 R K* c1 }, f5 [. Y
{
: t1 Y) A# h% u- g6 `, Z if(debug)) u5 P a }# I8 _; D
{
$ Z1 P# d' }0 N2 I3 J; H alert(e.message);. E0 b$ v, g2 y! f
} B# n9 ? H& J
& p; ?7 |! i2 m4 J9 s" ?1 [
return "200";
: m( w: N9 O' q: x0 { }8 Y6 y9 S7 J* Z8 m# u3 h
}0 i( E; B7 `! \ k( W. A' F1 I
( m# z* W; b/ s/ w
this.RemoveHide=function(page,objname)
9 K4 C: o) F6 j! o) |# p {) Y8 G6 K$ H% C6 R6 u) g7 [
try% j3 R- x( C% e0 s8 n1 a' n
{5 {0 f. G) D- ^& W3 n1 [+ V
var minValue=15;
3 R; z; J- z4 R! C3 }! _0 v1 a1 I var objs=page.getElementsByTagName(objname); 3 H& ^* ?7 ?9 f$ e& X, _
& T5 X6 o6 R4 m8 ~5 ] if(objs.length == 0)
0 N0 Z r0 A* G& L; @ g8 l {6 R6 X/ ?% C4 f) g4 V, m7 z
if(debug)( Q9 w" k" o( e2 ?( P6 U7 G
{3 n/ \- V- |1 i ], E' W! s* Q! \
alert("no object found!:"+objname);
) ^+ p) G& n3 z, n" A7 u' L: A D }0 F Z3 a5 p5 N. H* b( o
}
$ Q6 ^; m9 M" d$ C+ N4 O4 b2 O else D4 v0 E: ?! z4 Y
{9 t/ A r7 }0 n
6 E! g4 B$ `: {4 v2 y; J' B" r; y
for(var i=objs.length-1;i>=0;i--) / s$ Y- J1 s: c, H F- R
{) ^5 Y) ~) a7 v( V7 M/ k% v
var node=objs.item(i);
) O) P. \3 K5 R8 [/ Q
' z% x* D, X( [( g* P1 h8 j 5 W# S$ a3 a7 S+ N
if(this.getobjstyle(node,"display") == "none" ||- k& f$ `$ [: T& V3 D, b
this.getobjstyle(node,"visibility") =="hidden" ||' Y! g+ K! V* ?
parseInt(this.getobjstyle(node,"font-size")) == 0) + p, m Z7 ^1 O5 k
{
) g! m% b+ T) ~ if(debug), o0 _9 u$ k7 S, H+ _1 ~
{0 _2 w) D: W9 t3 [8 \4 Q; n
alert("remove invisiable!");
9 a) T) x1 A# h }: [. }/ g) F$ G7 g
node.parentNode.removeChild(node);$ L9 m: }& v( i/ P6 L+ Q1 ]
# i; V& o& j" v: ~: D }: L" {2 ~, h+ i" [9 `, A! |
else ( g8 u* S% X0 P) K6 a1 _
{
% f$ R! E' u: b& O( P if(node.parentNode) 7 M5 B! K1 V1 O" d9 M& `# B
{
, Z e' B- S$ A- u* n( [1 k var orgNode=node;; Q' L( e: t9 J& K
var orgColor=this.getobjstyle(orgNode,"color")
$ _$ x; {4 O% \/ M& a var orgRGB=getRGB(orgColor);
$ j1 |# |3 }1 g2 H ( Q6 R' u' v8 V/ ^) Y8 M( `
var parentNode=node.parentNode
" ~* o# m' M5 |) } var parentBgColor=this.getobjstyle(parentNode,"background-color");: m B" ?& [9 ]) n
4 @9 P$ I3 x+ I% S9 m h1 b
var isLast=false;$ G1 g9 ^8 B5 d# [' z' D3 K& i
4 `1 s4 p( }$ N9 F1 \% n& | while(parentBgColor == "transparent") * t# t( a; T- W7 {7 N$ C R! _
{: |4 v- \- @- {# ]0 A5 \
9 K% V$ _ i+ \7 X/ M9 `# h. G
! {) C4 N( P# g5 h2 |* g+ A
if(parentNode.parentNode == null)
8 r9 H1 z- z9 f& ~ {
$ @4 C f( W( T3 t) D- o) P isLast=true;
& s* X4 \ C* \7 n! h" f break;2 y% V- V S4 l) p7 D6 d! P
}8 Q) [1 t# p1 R9 v( g
parentNode=parentNode.parentNode;
0 f0 k+ l! ]$ p! L: Q: d; @) b+ b parentBgColor=this.getobjstyle(parentNode,"background-color");% O" z* a8 W/ L$ `; ~
' a" f' E7 W$ d! O7 d2 a0 `* ^( c if(parentBgColor != "transparent") ; m2 V: `( X% E0 f/ z9 ~
{
1 s% W3 c% K* Z+ x J+ u( Z break;: ]2 [/ M/ W# j: s% ~3 l- G, y
}
( W, R1 ]/ Z. S+ s# T7 @; V$ h }
6 e- i, _/ v3 Q) F if(isLast) # L7 K# K2 Y1 h
{
- C, H' ~: J! Z% Q M# Z9 m- t if(debug)
5 `; x% `8 I- E/ F! m {
, s- {/ O. Q& I. r) O2 z8 `" V alert("last!!");
4 q7 N' L# h/ B! Z& c }( q" E) N7 _( w" g
if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))# `! \4 U- N- t- B
{1 d/ a" r$ _' e; F9 H
orgNode.parentNode.removeChild(orgNode);
9 U5 f& a; b* N% l, M2 \ P }/ c5 T. o' C) N9 O. E/ K
}
1 v# h3 i) Y6 B/ g' f3 M) v else
* D6 q, x! I8 [5 f% Z6 q5 J {3 |; F# @# D3 P9 U
if(debug)& H* `0 ]. {- i* }7 \! H
{6 A7 T4 l7 z N1 [) H
alert("compare color and parent bgcolor!");
6 W8 f8 \# X8 g6 p! h }
8 Q' F) N7 J) H, | parentBgRGB=getRGB(parentBgColor);( l9 e4 T8 w3 N e* f* O
if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))4 y' J+ Q, D- c$ @: b, o, ^/ a
{
& S4 u1 G2 H! H R orgNode.parentNode.removeChild(orgNode);
* M, N/ N( F# n; X }
6 W4 _9 S% D0 g7 x }1 p1 }9 ?0 {/ ~$ i9 m; D9 R! f
}. ~/ i7 ]0 C. X2 C5 A: U+ a' p
}: Z" e4 F; A) h( S6 [' Z: S& _
}# @5 d: z6 [. r
}3 T. g( [4 k- w$ O# Q
. G8 @' m8 J6 W. Y # g6 M( R- R# p* t) i. ?( Z
var itemFrames = page.getElementsByTagName("frame");( }# `; P6 H& H3 B5 Y
var itemiFrames = page.getElementsByTagName("iframe");' ?2 l) p. i2 ?
; }% H( l& {$ D" r) R( b7 z3 ~
var frame, iframe;+ t' L7 ?" _, X& G3 Y6 u. D
if (itemFrames.length > 0)
A# c+ j0 H v4 G% T% I7 { {
! Z/ M# ?4 X0 w& z$ i for (var i = 0 ; i< itemFrames.length ; i++)
1 G+ d8 V. X+ h7 f6 @% ~8 y: _( J {& ~$ _9 @9 e& T# \6 q' P/ X" A9 H
frame = itemFrames.contentDocument;' `* m( Z0 h4 n% k2 x7 o, u
this.RemoveHide(frame,objname);
( g$ E5 T9 C/ T( } }6 R& |4 ~1 W Z; t* ^' S
}
! D( e& n9 J3 d/ r! `0 d' t if (itemiFrames.length > 0)1 W1 P/ b" s2 ~/ Q
{
5 }2 [. i, {' g for (var i = 0 ; i < itemiFrames.length ; i++) 5 N7 U! I7 |% X9 Y; b
{
5 V5 U+ K$ W/ t* v6 y* Z iframe = itemiFrames.contentDocument;
* b) \1 e: F6 M this.RemoveHide(iframe,objname); 0 ~ b" H" U& ^/ i
}
+ W) A8 E5 l/ s# Y0 Q }9 K' ~' g- [: X) h1 J
}
9 Q, w# [) ]% j' n, U catch(e)
5 R/ X( i2 R* T; h; g" `' n0 W {
* w) q2 { q0 v/ U% a, f- c( @ if(debug)$ V% F/ t/ m4 {, u+ y6 Q5 o5 G
{3 h8 j# C& z1 [2 D
alert(e.message);; u% W9 v. [/ s0 g% v' d
}
7 B7 b ?/ A' T4 T }& ~ x |# \1 t/ r6 Q
}
4 r: b) r( q7 T ?+ W3 X 7 b% l, K# g" Y& n/ P. x+ d
}: S9 a2 I4 b" r& N Q) q2 T- Z
! G0 f' y$ |: K, j1 k& I% u5 s+ R2 Q7 c0 ffunction getRGB(colorString)$ g3 D% N) u7 s1 r
{. i e9 J4 A3 U4 r, _1 |& L1 h
var RGB = new Array;
" {2 ]3 `7 o8 |+ h var tempSting=colorString.substring(4,colorString.length-1);) c1 @8 R. H2 E: V. q5 {( l
var tempArray=tempSting.split(",");
+ O0 A D; q( j
( C! z6 \. P+ A# | RGB[0]=parseInt(tempArray[0]);/ C- g% I+ i$ ?1 S1 K' m5 I
RGB[1]=parseInt(tempArray[1]);
8 q/ f& U9 [) M* S7 {6 O8 Z RGB[2]=parseInt(tempArray[2]);
( {4 K, V: V2 p& v, J5 r( Q9 l 9 _2 D# X6 U& l1 Q
return RGB;% e7 L; w+ n6 D8 ?& w+ p$ [" A
}1 T; T' I$ {' Q1 g/ T- w- U
function keys(evt) 8 T) U( ~ C- Q1 E" R- Q6 R
{ 4 U* i% j5 w- \0 n& _) t
if(evt.ctrlKey && evt.keyCode=="81")
2 M$ g9 K5 K6 l$ {8 ?3 w _ { 2 C1 {% o& @* Q
CleanHideObj.on(0,1);
" X6 X. e/ f( j( k; B. i6 W alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q"); 1 ]5 {( ~, y" O M/ J Q
5 L) m& B8 X; _. Y, ]6 }
} 2 k0 b- l- D5 n9 j+ M
}
& s6 `1 e$ Q7 A3 L- bdocument.addEventListener('keydown', keys, false);
" k8 y4 p: u/ I% A+ t7 JGM_registerMenuCommand ('Clean Hide',
3 ?: G% c( L0 J( h. dfunction(e){
. e" o; D5 R# `; T! z, |/ |: vCleanHideObj.on(0,1)! L3 K5 F0 l$ e z
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");1 h) C1 z# C; F L" ?& C3 g
});& ]% b$ }, W( A2 i$ U" ]7 ?
|
评分
-
查看全部评分
|