|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑
( l N! _4 b* z2 D `; I' t3 _% Q' l+ T w+ d( d
火狐插件,用猴子) _9 A' j; o8 x+ R
7 e/ Y9 o; F6 Dvar debug=false; : h/ x8 K( q& T
var CleanHideObj=new CleanHideClass();' p& w4 s ^% G* ~
9 X8 n" G/ o. O U# C1 O( K. n
function CleanHideClass() + f b/ G" k3 ?
{ * `7 q& h3 j7 E7 y
" j% x. ?& y2 q6 o* R this.on=function(id,bMZ)
4 u4 j6 }8 M7 G' C8 Z {/ X- d9 h, r, Y: P' B
E5 H- f- d' p1 ^ if(id == 0)" F0 X; Y3 g7 S, W
{
* w. p0 ^0 c$ ]9 ?7 a var page=/* document.getElementById("content").contentDocument */document;
- r4 t% z' Y( b# e+ y this.RemoveHide(page,"span");% N2 t0 V( F# c1 E: T. n( ~ x
this.RemoveHide(page,"font");% ~* w" P9 o2 n1 P+ _- j) R5 u
this.RemoveHide(page,"div");0 K( K, t h' d( \5 q2 F
this.RemoveHide(page,"p");
, T1 Z- i( N! ^
) |' g% |2 f9 F9 X7 \8 \) t }
, d! {% m: t; ]0 q2 a, c
' b. t- c% V/ {. `+ M& g+ r" y }& v( j( B/ X1 y+ N( i3 J
this.getobjstyle=function(node,prop)
4 r7 y& \1 T6 W. W4 ] {
) W% i3 O* z( M try0 @+ E D, {+ N! c
{
, u; ^0 \$ t0 f$ j! G. v return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
, U/ T3 d& j, B) @ }5 Y% y/ t; h8 G$ E. S/ Y$ [) I0 D
catch(e)
! u2 G* q' c" E: D6 L5 Z {
5 u5 V6 i+ c+ Z6 H& H5 O9 a if(debug)# w/ q9 G- ?/ f5 H$ c$ _# ]
{
d; r8 `0 f7 Y+ A! N% O& q# X alert(e.message);. x( W, \" m* T8 R4 ]; e5 C& `
}& K$ } A3 T% C- W
9 Q& ]4 d8 z+ H/ e& F
return "200";& \$ C. N# e t) I
}
! T: | _/ f9 m( X- I7 Z7 H }0 X/ G2 Z t: M6 q& b& l5 z
9 @5 P a! _1 F: \
this.RemoveHide=function(page,objname)
+ v2 B0 M& c6 p7 {4 Q6 } {" g. a1 D' e, f; c3 b3 d. ^7 C: U
try/ \& S! s A* O
{- y7 Y- U: ?+ u
var minValue=15;& p6 |' a6 i# h: H
var objs=page.getElementsByTagName(objname);
' I( a# T" z5 P6 }3 V
4 j3 _- D, R6 h% w if(objs.length == 0) ~. Q5 ?4 ~& s& P# m% L
{1 r# W4 d w: W: z
if(debug)3 W( l5 Y) b: q" u$ A( f
{# ?6 G+ B, }0 x+ ?0 K% f; t5 n
alert("no object found!:"+objname);5 F% B/ \- ?; X @
}
/ w7 t, N( @* g* T5 a3 _6 h }
9 A7 @' c8 _. e6 Z4 A% q, X% _ else- i" k# P( H! N: L: K& w! d
{
( [5 |/ J! ]1 U4 ?# [9 i9 W
4 B1 e$ G. M, M6 h+ F) N( S- k for(var i=objs.length-1;i>=0;i--) 5 }: s9 p- V* Y* o. p" F# w+ }
{& |1 [1 p: X( ` _
var node=objs.item(i);
y% Q8 c) n! U1 [3 |+ F0 L) K 4 r6 G( w9 ?# B* W
# E3 Q* E$ l& [- P7 A; L" b2 ^# ^
if(this.getobjstyle(node,"display") == "none" ||# h. W v# o$ i1 u5 |
this.getobjstyle(node,"visibility") =="hidden" ||
$ B: }, B: h# n+ v. Z: F parseInt(this.getobjstyle(node,"font-size")) == 0) * c% w# z8 [, h% O& p a
{9 S# ]& C+ q+ Z% f
if(debug)5 X( x" N) m# m$ @& @0 z0 z( ]( g5 X
{: ~2 C# d( C7 ?, B; L
alert("remove invisiable!");1 |4 V! i t. R9 L" {
}
) r7 ~2 ]2 ?* ?0 G% w node.parentNode.removeChild(node);
1 Y" T( Y! [, ]# L7 o+ k) E
- C8 ~5 X6 Z' b; x3 P* j+ O' f* x }
" J' F+ f+ e1 E9 a3 Z; |/ J7 u else 1 M, ^ K3 {1 e/ t. X2 |. ]6 b/ m
{8 ~) r% H, M- ]+ ]0 b6 `. v
if(node.parentNode) 3 [8 Q% o% S% x) F: L# P: W
{0 K7 ^" }! z! @7 e
var orgNode=node;' @7 l1 J( Z3 p* L7 L
var orgColor=this.getobjstyle(orgNode,"color"); a1 H- G$ l) K% ?
var orgRGB=getRGB(orgColor);
; `" P; j8 y; ~2 [
6 B" m5 y- M1 k7 G3 I var parentNode=node.parentNode8 A! ?' h0 a/ B0 `4 W& B3 u
var parentBgColor=this.getobjstyle(parentNode,"background-color");( ~" d9 g/ d6 l& H# w7 B2 q; q
, p1 z5 X! i6 {+ f' C var isLast=false;
0 w `2 J- j, p2 J! a6 ^- T & O; |( M, D. |$ V5 P5 W
while(parentBgColor == "transparent")
0 z' A9 @6 Z# [9 E1 l1 V; V' S {( `, u$ R* s, E; u: C- o
3 u1 J% i% A; n0 U8 C
$ u% @+ h: T( r& E
if(parentNode.parentNode == null)7 G* }: D0 x* V, v$ L0 l) T& p
{5 z1 f5 q' {; n. U3 d, L; c
isLast=true;; N6 e7 ]9 V% C
break;
/ N* q8 k9 o8 f S" j" }) R }
2 i( |# w+ ~- E2 B& s parentNode=parentNode.parentNode;7 f! [ o& S/ p
parentBgColor=this.getobjstyle(parentNode,"background-color");
. F8 ]/ i, H* t- {% u) p8 X2 b
. D9 u$ ~! i2 W( a2 {9 R* O; C if(parentBgColor != "transparent")
8 L. l3 c# G6 n, F) [ { Q7 |8 `1 ?6 p# L8 L+ S
break;9 k$ u, j! U3 G" D. T
}
: \ w! w' ]8 N* F9 ^' a) a( n% m }
1 V4 I/ b0 y$ F; R6 k if(isLast)
' L8 T% [; D* t0 K. G {, C" H0 G" y% B+ G. M S' N) @/ l
if(debug)( T* u* Y: z$ s2 `8 t/ e8 I
{' d/ o3 l1 ?' k; e* W! I/ V1 w. X
alert("last!!");6 E+ V7 f, H% z) ^8 J
}% n. }9 B( F0 j
if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))
2 t' h: u0 t1 v1 e6 m; g& P/ d* z {
/ u% U9 c4 K; D: F2 N' ] orgNode.parentNode.removeChild(orgNode); ! C8 _; N( `( t6 S
}: u1 o3 x3 `0 d) L9 X# e1 r
}6 [9 @" t. f+ R# G/ c% p
else
4 B4 f |- k" u" ]9 P {% y! y( T& E. e& w( I
if(debug)
$ E9 @. R# h& \2 b a" B$ p {1 F4 m- F8 }5 n0 y; d1 }+ }
alert("compare color and parent bgcolor!");
' V( R2 l4 R. C/ G7 Y# G }3 P0 P% z B' C- G- W
parentBgRGB=getRGB(parentBgColor);9 g3 F" O' @8 F' M6 y
if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))( |% Z; @1 q! K: f
{6 O! O2 Q" Y* J
orgNode.parentNode.removeChild(orgNode);
$ Q2 D, l" N+ @/ c: f. D }1 _- W3 x h. D) m
}8 r7 d. M6 f: U+ Z& c+ A2 R
}# O$ M0 e- B" b
}1 ?! [6 |9 w- x6 }6 e: m
}: Y$ j6 C+ T6 _
}
" @- }* @3 A+ E1 f4 E+ Y' \& X
1 X. a6 |% z% H% Z. C + s- _9 A9 {2 ]* t' _( _: ?
var itemFrames = page.getElementsByTagName("frame");
2 j0 T- x- c3 s( X: L var itemiFrames = page.getElementsByTagName("iframe");
" D3 w9 e! L0 V, { 8 @# |0 _( b3 m2 H. @1 B6 F$ E) c
var frame, iframe;
$ D' ?2 g, L8 y- W if (itemFrames.length > 0)
& D$ _; A6 F) O& ]& \2 w( @ {0 M/ R. c, Y6 ?" I: V
for (var i = 0 ; i< itemFrames.length ; i++) . y" U1 g# n e2 ]2 K+ H3 b) |5 H
{# b" ?) W8 F, y! q
frame = itemFrames.contentDocument;
1 v4 n! [9 s0 C' Y this.RemoveHide(frame,objname);
& e4 b% h7 }& j9 G1 X }' U; b1 }/ u' B' s1 F
}
, L" t3 |3 V E- e, Z if (itemiFrames.length > 0)
1 R; U5 X' N+ A; { {
) v& B- F. d3 X for (var i = 0 ; i < itemiFrames.length ; i++) ' ?' T2 p2 A: `% T- U0 g
{
5 r% o. `, m5 ^ iframe = itemiFrames.contentDocument;: M8 F( J; [: o+ o
this.RemoveHide(iframe,objname); 0 t3 l( O. B# N8 C
}- S' ~# X) @ u G1 z* y5 ]
}# z8 Q3 S) q& Y" v ?! V
}
. g' ]$ I' i8 S0 |4 [" z" P catch(e)
7 |3 z0 U/ l# G) \9 b {
- \" W( X2 D+ { if(debug)
1 z- F: d; x& F$ r {
8 z0 z1 ^8 y- x( ^# x; M( T alert(e.message);& h, x7 H1 [7 s0 p5 u% R
}& G+ d" `6 Q) `+ t- A6 ~
}
; i2 s! B& l- m5 r6 p! ] }* f) r) w8 z' J9 e' \
5 H8 [. k! z- L, i1 _' V}2 J* ]. v. j% m3 P) B+ A
* W; [) c& m8 t. ]- vfunction getRGB(colorString)
' d, H- R6 x! F" W$ Z{# C0 W& g* L% Y: k+ r' G$ j1 l
var RGB = new Array;0 Q$ d4 q$ n+ M- e# D" i/ \
var tempSting=colorString.substring(4,colorString.length-1);
' R" @" {. N, o5 r) C |" O$ b var tempArray=tempSting.split(",");" A, |5 D$ j @2 l P1 |5 z8 u- m
5 I2 d3 L o% `* T RGB[0]=parseInt(tempArray[0]);1 p/ e2 g0 T) a% }0 |3 Y; T! B% U: K
RGB[1]=parseInt(tempArray[1]);
+ K) ^. ^' _0 l RGB[2]=parseInt(tempArray[2]);
8 |" D x6 X! W% F. {+ N
9 d; h9 @3 ^! _: z return RGB;2 d" Z- ]. O+ @! ~4 Y
}( l- C( p# N. y0 N: L8 r) `, X- W' f
function keys(evt) : J5 x8 u1 b& y R2 y
{
) f9 N: `% I# r5 z if(evt.ctrlKey && evt.keyCode=="81") 9 v2 n6 k) O4 P }
{ + b& O5 a$ p, {
CleanHideObj.on(0,1);% B/ Z7 V7 o1 E) o3 k
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
& W# Z4 H0 v3 z! @5 D$ Q( F" D
! W, I7 \- e9 q& _/ e2 Z0 M } ' e$ d, L3 D# Z
}
9 q; Y) b) D! C* v4 cdocument.addEventListener('keydown', keys, false); , F4 ^. i, m! i1 n2 E; t# J
GM_registerMenuCommand ('Clean Hide',
0 A$ U1 `' f3 \4 {+ r x" r, Jfunction(e){- V& w1 a4 _* a. d0 a" N- ^
CleanHideObj.on(0,1)
6 \. [ M0 W; a0 Ualert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
+ l" f+ ?! L$ Y' ~! _});
/ c$ N+ x6 n: @2 j, ^2 ~1 q |
评分
-
查看全部评分
|