|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑
+ l( L) M& \ c' f) Q( Z+ e& U6 [
1 c6 w* C2 E3 l* o火狐插件,用猴子
3 \7 F% R4 A) M1 W- M$ A
1 L- J# @1 r# q4 h. Lvar debug=false;
: }" O$ j: h! W: y9 pvar CleanHideObj=new CleanHideClass();' t9 f3 K9 g n& S4 s. }7 U( ^* V# E/ t
1 K! U9 K' G' n. |2 ]
function CleanHideClass() 2 j! \+ y: L+ Q% D3 ]3 q
{
% X/ h5 W D8 f0 H/ s
" n# q: [3 ^8 I% w% v& C4 I this.on=function(id,bMZ)8 j/ F* J# O/ w' _# F
{0 c" b# Z4 m8 | m& C6 l. ^; |% M2 @
% k/ h$ J' E" j1 J
if(id == 0)5 y8 O, v1 S: ~) X0 m3 l( e
{
" @, p6 f. K0 _0 \ var page=/* document.getElementById("content").contentDocument */document;
& g* n1 ]9 ]8 e: \. L0 N( U: G! e this.RemoveHide(page,"span");
, y; E0 P9 b7 t6 F% g this.RemoveHide(page,"font");; ~9 b- f: f2 n& W0 ?: {6 u
this.RemoveHide(page,"div");
, k, C+ ~* S- }3 B) o3 K* R this.RemoveHide(page,"p");9 n" g" q8 H1 G- x) ^6 o
D1 n9 g, x8 c. }: p }
5 D% y% E \0 N3 Y; b7 T* p8 _3 Q) W4 |
% I& r/ i% p. p( C: R! e5 M }" X& w; }0 l8 }0 |6 @( H7 [
this.getobjstyle=function(node,prop)" h' B. _/ Q5 {* Y* m" q
{
" X. h# T; `7 z; s try; b }% y8 P& I' q4 n$ o
{
+ F- h1 K1 l& z. Y return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
. [; x( I0 w1 F }
* W h T" D p1 R catch(e)
& [' b: J) Y" k, X {& g2 }4 B9 Q I7 {3 @( H7 F
if(debug)
n1 T( C/ ]+ V {4 N' p' |; ~ y1 W, x' ~# q& P
alert(e.message);
/ ~0 M3 h& a% c, F. `" N2 T }# a8 {, _! k9 F, h, Q" j3 ?
8 ]6 f2 d, E! _% y( q" j% ]8 {5 s
return "200";; X: P5 q5 l Y4 @! p8 ^
}7 y8 Y# {8 X5 H' h7 D
}
5 Z, i' Y0 S0 K5 u$ l
, Y7 \+ q0 A# V8 f. q, A this.RemoveHide=function(page,objname)
" a: Z' a! `6 y5 r, b: @, x0 X {6 `' T. Z( u4 F- z ~
try- d8 b/ w y& R: D5 z7 S
{2 n+ ?/ i' }( l2 J1 t9 Y! y
var minValue=15;7 {9 E, }$ s2 U( k$ x, e3 c
var objs=page.getElementsByTagName(objname);
! V& u/ [3 e) t2 L, x) T1 {# A" ~; R7 }9 c, d3 |
if(objs.length == 0)
! }* _8 K) ^: b- S+ T {
2 {, m0 `4 n a7 z b if(debug)& g7 U6 k" t- M/ n) t, ]
{5 \4 E* F2 l4 O! a; I# C
alert("no object found!:"+objname);
5 v' C# R: {" B! p- q6 |5 U8 N8 Q1 L }, n" z; J- k+ I0 Q
}
/ y8 O1 i9 _: D( q& ]# E" e9 c else2 f' _: h% }2 J& f
{: {) g( a5 r' [0 R% g
3 ?6 i" B8 d; g for(var i=objs.length-1;i>=0;i--) z# S; }( |5 [8 ~& m2 a, @5 z, f
{. ?: i" Q/ f, Y( E1 s
var node=objs.item(i);
7 }4 j( ~1 S6 r1 j& T4 Z & P& z7 Y* }, ]3 B' H0 d* U
$ t" ^( F. R! \0 ?; h$ t
if(this.getobjstyle(node,"display") == "none" ||4 V+ j+ o1 C4 ~
this.getobjstyle(node,"visibility") =="hidden" ||: U4 A0 Z/ i8 f8 X9 n
parseInt(this.getobjstyle(node,"font-size")) == 0) 2 N9 N' I. a" [2 C: W6 x
{' L/ C! f, ~4 a+ C8 P5 Q* `" k: k: ]" K
if(debug)/ b* J; X, {; @4 ^7 U+ q) M
{
1 ~4 g& l, u5 J3 ^ alert("remove invisiable!"); |& |( s# ^+ H) l3 w O8 E
}
, q3 E' P4 q, P8 g, k' j" M* q node.parentNode.removeChild(node);, X X l! d# I# n0 }+ B4 P
5 O+ v3 k9 }6 R; F6 n5 B
}# r( k& h2 a6 p7 _# N
else
- T y. |1 b) ?% b0 ~/ N" a {
1 ^! r$ ~% q: I/ ?1 {, `" G- w if(node.parentNode)
% w( l; V* u, k$ Z: I( i3 Y {
2 @3 @2 n! a$ P6 h* n& o8 @* J j var orgNode=node;& T1 u7 `3 C& R+ U
var orgColor=this.getobjstyle(orgNode,"color")- L# g) D) |. n3 X
var orgRGB=getRGB(orgColor); 3 T; X+ Y c# k% y* C3 u
* q6 Z$ G" t( Z2 Z7 F6 | var parentNode=node.parentNode* J6 \9 u+ q7 z! O3 x. o0 _
var parentBgColor=this.getobjstyle(parentNode,"background-color");
2 y" A) ~3 ?/ U 7 ]: E# m+ V( b( I9 P& T
var isLast=false;- a7 _* G. W% n8 N5 S- z
& J$ H& w: g- I4 [. W! I while(parentBgColor == "transparent")
Z% _4 i* i* I1 d: m) b- }) q {: v% m! k* ~9 I0 q
3 _. ~6 N( a% B, W8 F0 f
6 m/ u( y8 T3 e if(parentNode.parentNode == null)3 [: i& Q& @7 q1 l& m5 F0 Y
{
8 O& M$ U$ K8 p4 M2 o isLast=true;/ c. @6 [6 y3 Z$ N7 V/ ~6 Z; N
break;1 R8 u1 D% T L& _' O5 G
}
" M7 s! i& R4 j5 I0 ?7 [ parentNode=parentNode.parentNode;# {4 M( W) Y: |
parentBgColor=this.getobjstyle(parentNode,"background-color");+ W2 z$ P$ \# b! C, U
a: e4 T7 \% `2 g
if(parentBgColor != "transparent") 7 P. V+ X( |+ w( B% Z
{
1 C4 Q& @8 H6 o break;" j8 `$ H& J6 V- z( Q. @- r! I1 i
}
5 P) h6 ~8 K- U c1 p }, `7 W. b8 V/ f" v) j) i
if(isLast) $ l) V3 s# ]. M9 s6 c
{* c, e3 R) ?3 \" A1 ], H1 P
if(debug)
, ^9 h) p. l# @ {
- v$ z% w$ A; O& J2 T" V- D/ S alert("last!!");
3 y) P; e# k; h }
4 A0 P5 v; L! G+ } if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue)); j9 ^$ m- ?& c. r; t
{0 @: Y4 ?( S; H6 j5 `
orgNode.parentNode.removeChild(orgNode); # ^# f- `+ \2 j! v
}
' c3 X; X5 `, r m2 O }- n1 V9 v' J; d; B+ }) `
else- x" F: i4 ^; Q% v
{
7 i2 I; k7 r. i" y- B# S if(debug)7 Q! T& n C) h
{
6 {) h9 ?5 t9 } q. @: a alert("compare color and parent bgcolor!");
2 c0 \- h6 K" d: E0 {1 A }
9 o0 d9 T: A' e( j* v3 P* z parentBgRGB=getRGB(parentBgColor);- l! f/ c. t9 j* ?3 p: w0 K
if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))6 ^0 P, a" F% `1 y( \6 [
{# C5 K3 A5 P! }( f; k; l" L
orgNode.parentNode.removeChild(orgNode);
; [+ j; \* c. o3 B& } }
" T* B# U9 f1 d4 X' @1 b. [( I j }
* U) M' l A) ?% j, k }
4 \3 o( V, t& s; j) M } M9 y% ^2 \% w+ l3 A9 m
}( W6 Y+ x! q0 a4 f+ }
}8 \: ]# ?) f9 r. B+ B
4 Q/ M) i8 f2 A7 j5 R
6 f. l( d" g* t
var itemFrames = page.getElementsByTagName("frame");
- h1 C) l/ d3 X" s* r var itemiFrames = page.getElementsByTagName("iframe");; i& m% q. x4 F
* X( d$ [& _! Z+ v% e5 x' S, j C4 q
var frame, iframe;# [2 I: {0 n' Z4 F
if (itemFrames.length > 0)0 C% K) _) L7 L& N( V
{, E% W4 t* `; P3 U; v0 m
for (var i = 0 ; i< itemFrames.length ; i++)
( z3 v7 Q' A1 s+ j* g' Y; E {' t5 x, J4 ^, t; j( b# M# _
frame = itemFrames.contentDocument;
- V/ _6 Z/ R5 v$ N this.RemoveHide(frame,objname);
2 r; }3 x2 A1 @+ t6 j# z }
- F5 c$ Y1 Q' [- } }
9 K: s" K {5 W if (itemiFrames.length > 0)
$ o% X0 \9 I: A* Y } {4 C3 t n1 @" @" A# e
for (var i = 0 ; i < itemiFrames.length ; i++) 6 _& g9 I3 g& n9 A
{
) y6 u6 K/ j1 j, z iframe = itemiFrames.contentDocument;
/ G' @ \+ K! D- j this.RemoveHide(iframe,objname);
: T3 v' k: Y) N/ k }
( z4 Z4 H& O! M/ {" _1 h i }
9 b8 a; k+ u, r% G! { }8 h3 L" s+ z; \+ a+ {, B/ I
catch(e)
9 _8 I$ r0 ~; k1 h {# T8 w. ?4 W: T- x0 R
if(debug) F" r( {1 m/ s/ K2 R
{
( k8 e8 Z7 o) J* U: e! ~ alert(e.message);
\ a" b% y1 {0 x0 x: E( ]( t }
0 g5 f' M* q& ^/ B4 d4 ` }: F" b6 G9 z/ w& [* D" }( n% z
}
2 F6 t! c8 ?% x. c! N
" e1 a, ~$ t' ^) v& i( `- H8 b}+ W3 Y) d6 Q2 [2 l7 `* w% l
o3 H7 t$ h) g( {& Y9 T; V: ^
function getRGB(colorString)
5 _# Y( P; z* b{
8 {$ l5 ]' t9 W, L' U4 z/ F; ` var RGB = new Array;
# ~; H; c2 J6 S- w- [' \; w var tempSting=colorString.substring(4,colorString.length-1);
. |+ |" D# q! Q var tempArray=tempSting.split(",");% T3 H' ]' r! m* k9 b a$ E
1 m3 ^( q% v0 _1 B1 L: X* ~
RGB[0]=parseInt(tempArray[0]);: g; o N; ^; g0 J* }( l
RGB[1]=parseInt(tempArray[1]);* Z, {0 |7 h4 Q* X! t5 V
RGB[2]=parseInt(tempArray[2]);
: P Y' e4 k$ c 1 C3 b; v% b# e# Y3 f. Q$ @% ^
return RGB;
& S6 Z- A+ I$ h7 x! e+ X' l}: ]: Z6 ]" X3 s
function keys(evt) - F" I; f% z( e4 _0 Z* J
{
! f/ m3 `3 \( F' t# b- j2 P if(evt.ctrlKey && evt.keyCode=="81") 0 g, R8 P% C2 c) N+ n. X7 c# O ]
{
( R+ |' y' J' w2 P( R8 F+ B CleanHideObj.on(0,1);
- B1 `4 Y; J3 R1 J: q$ u alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q"); ' V# c, A$ h- G m5 n; Q) ~
' T' p. H3 y S3 `. j
}
4 K6 L$ E g/ e, l } % n9 H$ s0 ~( D; Z
document.addEventListener('keydown', keys, false); 8 |, Y" r4 g. [6 F# f R3 P* [) I
GM_registerMenuCommand ('Clean Hide',& u/ _$ g( r+ }9 K# m2 |* w6 K1 @
function(e){( s) U3 b, Z& P2 P# ]/ X. D& I
CleanHideObj.on(0,1)
* d+ r* t" Z0 g" I7 L/ yalert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");# E% v S5 c( M+ x k$ S" D
});: Z9 v0 |* J, K$ O% p* g/ z! t
|
评分
-
查看全部评分
|