|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑
/ N& e' U4 i, J: l6 x! b; e/ l
. |% p0 p2 W* S火狐插件,用猴子' b; o/ N! g: j b7 a4 h
6 n% C( D' D; ~( D/ [var debug=false; 3 `. Y- @8 t/ d+ k( `7 a5 o1 V
var CleanHideObj=new CleanHideClass();0 ~+ F$ k/ J2 N2 ~. [
$ m) n: ?) F. y6 i! V$ cfunction CleanHideClass()
- P- q9 \8 ?) N6 A% n9 l2 D{ 0 }& \' Q3 ?+ J5 \
: m: J4 z: n S [* K" M% z9 R this.on=function(id,bMZ)
5 _! |! i2 s R) u# c: _ {; W# V4 e' M5 f! y" ?8 {' W( |& u! n. r3 }
% n0 ]! a, [9 Q9 @
if(id == 0)( e1 c! N+ T7 |% b$ q
{
' n1 P) [4 a( F2 V+ @ var page=/* document.getElementById("content").contentDocument */document;
* Z& t' F! H \ s& G4 F this.RemoveHide(page,"span");8 Z" L- M! K* f& c; s! u
this.RemoveHide(page,"font");
' Y- c2 [5 R% M this.RemoveHide(page,"div");+ _* k8 H$ l+ p$ r- ~0 T
this.RemoveHide(page,"p");! B( U h7 o0 ]2 G0 S9 X
9 ?1 c$ A& g# w' F9 A4 T' m
}
4 |. o- i; C' _ / y( S1 r- Y* Y( q3 y
}
2 S6 f+ t" o: _/ p4 T0 g0 ` this.getobjstyle=function(node,prop)
6 F1 p$ G6 T* g {- N8 b" U5 j* L; u
try3 j5 f3 O6 N ]7 I7 J2 G
{$ T6 l# u% [/ j3 Q& V
return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
3 o+ @6 @* J E- S7 x9 E }8 Y5 |6 S6 y7 g' A
catch(e)5 M2 S' E" x- j( F5 N: t
{" E+ l/ ?2 \+ u
if(debug)
7 H. Q$ m* E: b {- V. i6 Z0 J6 |- J& Q) Q7 a
alert(e.message);
* |& w0 E: _8 t2 A3 n! |2 F }
. |5 {* N; [7 E' E+ N* c
8 @" _9 ?& j# N0 i: r( m, Z return "200";$ m( Q3 o- ]3 B* Q" }- h
}' g. _: a! ^1 A: y
}! R; r. |$ v$ x2 ? v
& J6 i$ v. p/ D2 t! f this.RemoveHide=function(page,objname)
% [2 Q# s+ t% H {' \2 k7 G: t- R" D2 \% s H6 x$ T
try/ c* }' K) O" z+ B
{1 j. s1 A/ d# I+ A- {% g0 Q
var minValue=15;
$ j) F# e" j- k! [ m: l0 o var objs=page.getElementsByTagName(objname); 9 i6 P. c) O+ D8 c+ e
2 W* c3 {9 h5 p; E$ G
if(objs.length == 0)
2 [$ P1 j- u7 K! {# D+ Y {6 O8 ~! D! h7 m' d! h) x
if(debug)3 O8 h7 {2 I' D( E2 q
{( J! @" q& T' P# R
alert("no object found!:"+objname);
. J1 B- I, H; y4 N$ b# ~6 R0 b }" x& P; @4 }+ P, @ [" m
}
b/ b7 d/ o3 m7 \2 |2 o else8 y4 ?9 J; e9 |
{3 `3 V8 M+ a2 j) w# F. R- o9 J
: m" R8 y# G4 u. \
for(var i=objs.length-1;i>=0;i--) / w7 s: z0 a. \: D7 u
{2 ^: x' G) i# W3 w+ e
var node=objs.item(i);
7 D* A: ?4 `2 p3 B
6 d1 M7 n7 V# F/ _ % m& v. P' N+ u
if(this.getobjstyle(node,"display") == "none" ||) n2 [& o$ d) _8 f2 p
this.getobjstyle(node,"visibility") =="hidden" ||
2 n/ H& r; _ |$ }2 w: x7 Z parseInt(this.getobjstyle(node,"font-size")) == 0) $ s, v! {1 \5 K D3 n; |! G7 ]
{
/ L6 G9 I1 B1 g8 ?& V3 P- } if(debug)6 M: D# s' J6 r. Y& V b5 G6 f
{3 r) }* Q0 Y4 K. p/ k& L, r4 k4 |# r% e
alert("remove invisiable!");
/ ^0 Z5 X) A# m/ o- ^ }6 V: }0 [2 \% f- h! f
node.parentNode.removeChild(node); D! q% F" z- u: h* j
0 Y$ [$ t' @, L }
* h/ C9 e$ [1 x- n) E else 4 T( O* _* q* B: S' [5 A
{. `" ~; k3 t3 p) ?0 A0 I* t
if(node.parentNode) 8 i- l$ p: i: {: c4 o
{4 |0 b8 s5 {' |9 g2 ]. U2 D
var orgNode=node;
0 H4 x9 {3 @' u: {; ? var orgColor=this.getobjstyle(orgNode,"color")" x# B, h( \2 L/ [
var orgRGB=getRGB(orgColor); , O: I. H8 B1 Q, M$ L% H
- K( u B, L0 a$ h' f" }% |( D
var parentNode=node.parentNode% W, K% p& n8 ~7 d- c% o4 A
var parentBgColor=this.getobjstyle(parentNode,"background-color");. Q9 I5 [& n( g4 m8 D
' c9 ]: c$ S( u& t2 A
var isLast=false;
$ w& p, n* [, d& ~" Y. c3 y
9 i1 Q; [% v7 ] u1 Q3 {& I while(parentBgColor == "transparent")
' j/ x( y. P8 O+ E+ R7 H4 n {6 g5 P5 N6 o7 A+ D$ o* t: F% y5 g
; I: P+ \: E+ t4 _# r9 R
4 m" G/ k2 x" ^* b. Q
if(parentNode.parentNode == null)
: f0 x7 `( `: a7 f4 Q {
* a% Y% N8 i% z$ m) B* {, @ isLast=true;
" [2 @& T+ ?: s3 p0 ` break;
7 ?. l) j' \% ?2 {' H }
+ \$ j! t: @5 |8 v% ^( Q parentNode=parentNode.parentNode; s+ i: F0 ?3 G! w! B: @
parentBgColor=this.getobjstyle(parentNode,"background-color");/ @" S6 _8 w) }- L. t* y: S
/ x; v9 _% v2 ~; |7 b0 H% b, ]* [
if(parentBgColor != "transparent") 5 u) h2 @4 b0 _2 _# t+ F
{
7 g* @: K* t( @ break;, Z' t; \2 ^7 u& X& w' O7 o( K9 g
}
# H6 _, P7 D/ ^- T$ X9 | }1 p* Z9 l6 ^! [! q+ A
if(isLast) 6 }) I# e- R' Q8 i
{9 `" a% @9 [; F
if(debug)
$ U7 n- D2 [! v& z. e( h {- T+ G4 S' m! B) V/ a
alert("last!!");) \- ^' l& W' I( X& ]7 V
}
5 ]7 T4 F; n; t' X. n' i if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))( o" z4 Q" u2 z; k. s# F, H
{- v$ _/ t/ C0 u7 N+ l1 B
orgNode.parentNode.removeChild(orgNode);
, I, Y7 V; ?8 W2 o }4 T2 I8 v& d1 R; Y" F
}$ i; o# V9 C+ \$ C( r# Y
else9 j* \2 t' Z* X9 `5 T
{6 F5 e, }# y2 W0 p5 j/ }4 R' r
if(debug)( s$ q. M* F* W- Y9 Q( y' i# i
{! A3 B0 D/ _* X2 [" L% \8 ^; x
alert("compare color and parent bgcolor!");
+ M& R+ ~* |( p7 N1 h2 L ^/ W# [ }1 W) G9 ^' I3 p
parentBgRGB=getRGB(parentBgColor);- w/ ~# ~+ J0 s# m- O! }
if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))
4 O ?0 T% y. p+ k- Y; W( X {+ ~ ~7 t1 x+ E! O/ L6 Y, `
orgNode.parentNode.removeChild(orgNode);
' V p6 M* ?- N$ A! v/ o }
8 B6 Q# ?! R/ f4 L) F, e; B# w8 ^ ~ }6 Z8 w8 b% s X% I( h- j) g) ?* o
}' F: S. M4 T3 e. B0 d
}- o- `5 k: q3 s W* j- O
}7 [6 t; K) H; b! ? C0 i! o. n; s& X3 F, a+ l
}
+ m2 }; Q/ V0 [2 g* K! Q6 o 9 R; ?! G. q) T k3 m
3 W4 R* _3 D$ z3 \# C var itemFrames = page.getElementsByTagName("frame");& v8 N* e9 F+ v; d8 {& F6 c6 B
var itemiFrames = page.getElementsByTagName("iframe");" l+ B; h$ N" f3 T. ]
/ @5 m3 y, U& d: H- y* o var frame, iframe;, b: J. s; j/ e: p. ?5 E) n
if (itemFrames.length > 0)
2 @* i0 p$ |0 a7 F, [- S" [. o {3 ] X3 ]* U a) J; B% O
for (var i = 0 ; i< itemFrames.length ; i++) 7 z3 b' S# p5 W
{
: Y( C" @, [& K o, {' b frame = itemFrames.contentDocument;$ S$ q( t; S8 J% W8 K! \3 B- A! s8 `
this.RemoveHide(frame,objname); 6 K$ Q) \% ?+ s) q) m# x; k
}' {- g$ v% _; p) Z
}" u5 X3 K. ?* n
if (itemiFrames.length > 0)
- S. E1 M7 t+ W" u7 g {
3 z) ], v5 z; _2 A+ r for (var i = 0 ; i < itemiFrames.length ; i++)
# p* ]* ^0 p7 z {: b( Z" J$ J$ m6 E Y6 F
iframe = itemiFrames.contentDocument;
5 V* z, ?& z8 N @3 G. q( N this.RemoveHide(iframe,objname); 2 }/ L$ ^, t2 q9 @5 v4 q* a0 Y
}
8 a& |9 v' [8 B0 Z9 Z( ^7 d. [ }
9 S$ K' z/ T: A }
" D/ _. w( }' Z; E! h. n9 \ catch(e)# y. m2 I6 [) f: X. c/ R- ?0 L
{) Z$ T+ [1 W) w7 |2 ]/ E/ c
if(debug)
1 E" S8 F, R" P) c. N: y { X4 P) p' a z- m; n, |5 h
alert(e.message);
. M9 `/ u5 c$ C& a }, r# A! E: i2 R
}
6 @$ x4 O2 F& ? X$ }4 Y* w1 r }
8 @) {/ A' H; z' m! G# z; |
6 `1 v+ Z0 ~! @: ]0 |, d: k+ N7 O}
0 O# M; V2 G# s$ E( d- Z! D! g% H) q- }: p# @
function getRGB(colorString)
2 ^+ i% T" B# d# W- N{: K5 q( O5 H. S3 x3 X M
var RGB = new Array;& k$ |1 v5 Z$ h J- n
var tempSting=colorString.substring(4,colorString.length-1);
8 c! @# B( t- {( V, V4 v2 F var tempArray=tempSting.split(",");; N) s( Q d; x- J9 e( u* t* Q* V
0 y1 C3 ^, C& g+ W7 O
RGB[0]=parseInt(tempArray[0]);3 }$ w' j7 x8 m
RGB[1]=parseInt(tempArray[1]);
; T% A6 d* k: E, X% C RGB[2]=parseInt(tempArray[2]);( W( I/ Q' u" ]+ x3 p
+ S6 C, H8 g, _) A0 z9 e; Z& L/ m return RGB;
7 X% K* X$ a: v- ~% `} Y% u$ i9 t8 k V, q
function keys(evt) # t X. ~+ J' a6 e1 f
{
) p* Z# V1 p9 D2 ?0 u; K7 q T3 t4 w* U if(evt.ctrlKey && evt.keyCode=="81") 5 p5 u9 Z4 N0 w; l8 [
{
/ O1 r# b [! a8 i CleanHideObj.on(0,1);2 Z+ X0 g5 C- P& w
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q"); % v5 E, [# ^3 O' {- D
7 \# d' }' h% S } / y0 L) F# j: Q5 F h
} ; F" M y+ C* i& l5 @4 d: [
document.addEventListener('keydown', keys, false);
5 G9 X$ e' d% H! @GM_registerMenuCommand ('Clean Hide',# Y7 Y. X* l Q% E3 r$ [
function(e){
+ {; b, F6 Z: xCleanHideObj.on(0,1)8 G# f# s* p$ {& W
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
* z9 l5 h# V, `9 w});
# Z( i( a/ O& z7 n |
评分
-
查看全部评分
|