|
|
发表于 2013-4-7 23:47:38
|
显示全部楼层
本帖最后由 chenmeiyuan8 于 2013-4-8 00:01 编辑 / @9 F2 k/ z7 S2 z V" |9 B. N
' T, a; `; t! r; D2 y9 } }火狐插件,用猴子+ y. A+ J4 o) V( h( _$ U L" P7 U
( q8 J$ w' n- C2 |/ Hvar debug=false; ) k6 c* s) P# D U0 s
var CleanHideObj=new CleanHideClass();
9 r3 k/ ]5 j# x9 t0 N; q, I4 s5 f9 d3 g6 Q5 `( H- c. S/ k* |
function CleanHideClass()
5 B! `4 ]9 i0 a6 G# T{ 1 ?, n7 h/ _, Q
4 z9 `, g+ ^$ ? this.on=function(id,bMZ)
6 \+ F( D5 X4 t5 R; z' M& I: T {( w r9 w5 z; k3 S" t6 E6 Q; Z
5 _6 O! ^1 u. ~
if(id == 0)- v& e1 N1 }. K3 O3 L$ n8 {- o8 U
{
) E/ e0 O+ l4 {, ? var page=/* document.getElementById("content").contentDocument */document; & c q: Q, r: q0 V4 }
this.RemoveHide(page,"span");
; r4 [2 M+ I( H( Z this.RemoveHide(page,"font");
6 v2 T3 H3 a0 ]+ u1 S this.RemoveHide(page,"div");
, [$ g) s) Z* T8 N this.RemoveHide(page,"p");9 ~0 B7 A+ }+ u+ {
& g5 ~/ c; v ]) G7 B ?! z
}3 k0 |' Y* m9 [
) P& j; G( }5 [ }
# e s y3 L6 k+ o this.getobjstyle=function(node,prop)
1 V9 J W- @) u5 A4 x" K5 L, c {8 s: z* \1 q& q; N6 E
try6 P; f. c! i3 H6 g7 s3 X
{* T- V' G7 Z# ~: \7 f
return node.ownerDocument.defaultView.getComputedStyle(node, "").getPropertyValue(prop);
/ V% `2 r% A3 x" k" q B }2 b& Z; w+ h: b% `" U
catch(e)
# {* f; c7 e) \. i" y) s {
5 q/ Y! E J$ B. e1 j# i if(debug)
2 V9 N5 H9 u1 c# m# g8 r {
2 n& V. w. N! O, D# s G alert(e.message);0 H) r+ [! g r# y% E3 T
}$ g$ z9 |% v- i2 E$ F$ }9 p5 P; S
; s8 t$ P: y2 P- o$ E# }
return "200";
( f) @! Y* E+ J N3 n* f: I }% ^1 O t1 a5 g# m& F3 |
}
1 |/ o$ `# E' R" Q. T0 f
Q3 A' s' h- W9 y, ~* C, m this.RemoveHide=function(page,objname)9 m9 q. S1 a/ V1 S$ {
{
% t- x+ ^4 h2 O# z try2 B5 d3 g$ A" X8 D8 q/ w
{5 Q5 [; f6 _5 f4 k- Y$ s
var minValue=15;
- r7 E# ^7 L/ q: K7 Z& |# x var objs=page.getElementsByTagName(objname);
6 R& Y" a; V" K. o% S6 Y5 t1 S! Q% y4 l& ~1 E$ k) v% z! k$ d
if(objs.length == 0) 5 d+ c8 }% O( t+ W+ b2 ~
{. T* } W; D1 l% `4 c& K+ W/ w$ d
if(debug)
- Q$ E- X/ }# C* a2 ^, T {
, H, ^: G3 f6 b0 m; P C alert("no object found!:"+objname);
" _0 M# [1 B4 V% Z( i/ J$ \" M }
- R! W$ E c8 ~! H( m }8 d2 _3 \' d7 O
else# J2 \9 v3 D8 M. y4 O
{- w5 M7 c0 _4 k; f0 o6 K
% r2 F5 N- b3 w9 B for(var i=objs.length-1;i>=0;i--) * l, j4 Y+ y/ Y% x* B6 I! _
{1 Q! |# T7 m9 j# W, u3 v2 \& ~
var node=objs.item(i);
6 Z5 V" _2 c) |6 e3 o. [( m
* I ?( X9 `" {- D, k
6 s4 m8 u* J4 ` }4 y6 X, s7 _ if(this.getobjstyle(node,"display") == "none" ||. E* U3 c. M& e1 Y7 k0 Z- O
this.getobjstyle(node,"visibility") =="hidden" ||2 Q* I; p" ~; b: W+ ^
parseInt(this.getobjstyle(node,"font-size")) == 0)
& i/ T- Y. q* t; p" s, g2 E( q {- B1 O5 q% B9 t; a+ X* J: K
if(debug)
& k. ?) T" O) @. N' \ {+ }$ k, X( v! W* M3 e
alert("remove invisiable!");5 R- Y w! R5 w( X; A
}
9 P0 i3 {8 D$ C node.parentNode.removeChild(node);
% _- A- f! ` k0 ~% w ) ?, b' n& G% P, _% k. V
}
. k, b. W! j+ k/ b+ |+ [( [ else
/ l5 r4 P: e d9 ^8 t) v {
4 N4 @* n$ Y7 y: m9 |( Q, k if(node.parentNode)
, }5 N5 M# T: }, a/ _ {
( v. K2 j- g4 b: Y1 N# y: V var orgNode=node;6 H' S; L) ~- W& y
var orgColor=this.getobjstyle(orgNode,"color")' {& f7 S- |4 t) v P8 Z, r
var orgRGB=getRGB(orgColor); ; L# G+ \& a( k$ H5 P% |: A w
4 w, X! k/ Q, H a# p% F$ Y var parentNode=node.parentNode
. }; Q' Y* f% F$ _ var parentBgColor=this.getobjstyle(parentNode,"background-color");3 o$ z- j5 Y. |& e5 i. a/ t! x6 i
2 X# A! l* n' ^; n& C7 C# H8 b3 }
var isLast=false; z5 w8 ]2 y0 I; ~' Y! t: h
5 t. `* A7 O3 m8 i while(parentBgColor == "transparent")
6 C& p' ]5 S6 |7 f2 t {5 t, b$ `' r% h5 @) v% Q/ L9 M N
! N/ w' P( h8 W
" O* G! P0 l* g( Y2 |( `1 Q; o7 Z if(parentNode.parentNode == null)
2 @1 i% n& Z3 V$ S, P {2 T) ^# V: t B% y v
isLast=true;
% ^7 k q9 y7 m break;
- e3 {$ o" t5 y. c& R }+ p% v) Q% x' J
parentNode=parentNode.parentNode;
, V. p* s' a$ w. C) h parentBgColor=this.getobjstyle(parentNode,"background-color");
, R( C5 d$ Y3 }: a7 p. E& b- b8 Q$ \7 {# f
if(parentBgColor != "transparent")
8 m; n! L4 [4 A: h" V% f" K {3 X+ h6 f+ w) P% @ u
break;# f7 v+ _: L+ G5 ]. ~4 d1 X7 m
}, K6 g. V; G! P- }1 g
}
8 {* U) R. W3 | if(isLast)
; C0 C* r/ o3 I/ H {" p+ ?) U% D% E U; f" X' @
if(debug)! {; f- O' B6 p$ N
{8 D- }% ?3 g6 I
alert("last!!");1 w* W7 d( ]9 j9 x$ e
}- N/ I! M2 }! \5 n* `9 x) @
if((Math.abs(orgRGB[0]-255)<=minValue)&&(Math.abs(orgRGB[1]-255)<=minValue)&&(Math.abs(orgRGB[2]-255)<=minValue))+ P* w- t& Z; Z& Y0 O+ L, |
{) |" x. G4 x/ y9 o
orgNode.parentNode.removeChild(orgNode); , m8 n4 q( `3 m& I( p+ t. i. U
}
$ n- S+ B4 y( U. ]* f ] }
2 E4 O( c* _/ R# i2 K else8 v8 l2 G) `; x% ?1 H# u; L# X3 D4 P
{
1 b% f! G. a4 L: g6 R if(debug)% Z% d: Y" g* w6 ]1 z. ^" z
{+ J; ~' [6 y* d6 V' ^3 w
alert("compare color and parent bgcolor!");
2 J8 @$ s; S9 C/ i. R& o6 h; X }- X$ B9 c( E5 |
parentBgRGB=getRGB(parentBgColor);' Z9 c+ w; b3 [3 X2 j2 Y
if((Math.abs(orgRGB[0]-parentBgRGB[0])<=minValue)&&(Math.abs(orgRGB[1]-parentBgRGB[1])<=minValue)&&(Math.abs(orgRGB[2]-parentBgRGB[2])<=minValue))
* T+ ^9 V5 i% M9 w$ s: b {
, P; H# p& B7 ] orgNode.parentNode.removeChild(orgNode);
7 V0 O( i) }* _0 Z' K* p8 Z }0 u7 W3 |6 e n6 O
}
~( M! P( ^: c, X4 M' R# t1 C }: F) q! [: `- J* J; B
}% X8 y7 N/ @7 O8 W: N
}
0 Y f4 I9 O9 `6 I. K: _ } s1 [$ v3 p7 H- _ D$ U6 i- T
' o9 v) }5 O! y. _. s3 B7 T9 x ?
# m4 A' y! w' S/ C0 U; S var itemFrames = page.getElementsByTagName("frame");
4 W4 b6 ` b) ?$ m var itemiFrames = page.getElementsByTagName("iframe");
( i- v t8 C9 C) G 6 p4 F5 Q2 N& _! n8 d
var frame, iframe;8 g7 z4 z" s6 L9 W# y
if (itemFrames.length > 0)7 Z3 [: O8 s4 D( n1 w; Y
{- b5 A* P8 W" O. K0 }' {
for (var i = 0 ; i< itemFrames.length ; i++)
7 T1 @% ?8 D3 `+ ? {# B% ~* z% t% b7 n( S
frame = itemFrames.contentDocument;
/ h4 h7 L0 w$ J4 ?! } this.RemoveHide(frame,objname); " z5 j# E, }$ h, M9 Z: k( |
}
/ k6 |$ J& u" u: d/ ]8 z }
/ S0 h" O+ G$ N) ?/ N& U5 j if (itemiFrames.length > 0)
8 }, j2 j6 l) [0 N, S6 w5 F {6 r* |+ q G1 Q6 ?- r, F
for (var i = 0 ; i < itemiFrames.length ; i++) / x/ g, T& L3 [# v0 S
{: {% E4 N5 b f' p) b N
iframe = itemiFrames.contentDocument;5 i/ L9 g6 R% {# t' h: G! o! M# `
this.RemoveHide(iframe,objname); p' ?" P8 R3 k" x6 J7 J
}+ d: ~, S: g F, `. x) N
}( r2 t( U# R; O+ s
}
) M3 v9 {% |/ w3 s3 k/ l( { catch(e)5 W* v4 ?2 a( o) o8 U
{
6 E; Q5 ~: ~: r if(debug)
: Y0 } S/ y% | Y4 W% s {
! o1 f% O; K0 C# P% L) q alert(e.message);, g- u, [) b* {$ ^" M l k2 @- T
}
7 l) H1 v' D8 w# b H, T/ [ }
; \$ q) W$ ]# u4 C3 L4 u! r }
. x$ P3 m0 Y y* c+ z ~+ } / S; T" e) r1 |! o3 K$ I! W8 k
}3 X- ?! d z5 E1 O' I
9 w7 ?" `0 u3 H6 T( W
function getRGB(colorString)- f: e& M3 c- w
{
- N5 Y) p, H6 Q% w( ~; Y var RGB = new Array;
5 ]5 v1 y0 B0 |3 F$ x0 m: \ var tempSting=colorString.substring(4,colorString.length-1);
! \; C$ o t1 H& ` b% J4 N4 r/ z var tempArray=tempSting.split(",");% z8 w' L0 F5 t- C
9 c& o+ K1 V6 ? RGB[0]=parseInt(tempArray[0]);
9 q! E8 x/ H$ `8 h! V RGB[1]=parseInt(tempArray[1]);
1 @+ ]$ B! P8 _ RGB[2]=parseInt(tempArray[2]);
0 ^/ j$ `9 C4 W/ B
7 N1 X/ w- |0 W& q return RGB; f; \* W! o- O* c9 v L
}8 [6 Z0 u' j$ k7 M7 v# ?5 Q
function keys(evt) ' Y A* {& C) k+ L% z6 |/ s) Q
{ $ m! `" [1 ^* Q9 P9 T% g1 I
if(evt.ctrlKey && evt.keyCode=="81") ' f8 l5 z, i0 e" r
{ - y% {# p! B/ Q( U. u
CleanHideObj.on(0,1);1 f! N! w9 M# s& K) M/ u% z, o
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q"); 5 X! A6 ] B$ {$ c; m
' c) f5 f: G8 n
} $ w' Y7 R0 V% t1 i
}
6 S. U' h1 I1 [# a* Z1 C7 Jdocument.addEventListener('keydown', keys, false);
& B) j; ]0 m u4 XGM_registerMenuCommand ('Clean Hide',
2 L4 m# s& f: Q, h* Vfunction(e){
; Q9 H1 l% @; w v1 j- C9 v3 YCleanHideObj.on(0,1)5 @- w+ @4 K, }; O; z
alert("Clean Hide successfully! Remember Hotkeys: CTRL+Q");
( T. t3 ]! j8 _' Y3 e2 y});4 h" b% J/ m0 q( t
|
评分
-
查看全部评分
|