得知互动

标题: html5中 media(播放器)的api使用指南 [打印本页]

作者: swmozowtfl    时间: 2015-7-26 20:46
标题: html5中 media(播放器)的api使用指南
代码如下:/ c4 N9 q& n  S6 z" i& F3 d
<!doctype html>
$ p4 y5 ?0 z5 b) z# @  r. o3 X2 r<html lang=en>7 t0 R; L! N, D1 Y4 T' [
<head>8 S# y" L* W: N: ?& d
<meta charset=utf-8>: j6 q' n) m. p* O; _2 g1 c; E. K8 J
<title>html audio api</title>& x  y2 T/ k0 L% Y9 ?
<link rel=stylesheet href=./style/main.css />
/ F0 U9 e( T  A<script src=./script/audio-controls.js></script>
+ w3 F' q/ A! I9 B0 K! e/ \</head>/ ]. W8 a; B) G+ C5 w
<body>& P  r! @% v9 b. h
<header>; K$ m7 G; f; Q' k% k
<h1>html5 audio api</h1>) U% y5 Q4 l7 ]8 P. S+ S
<p>html5 audio api demo by <a href=<a href=> target=_blank>learnshare</a>.</p>* S9 z9 m& M1 E. \. ~( V6 |5 e
<p>. Q  u; D, r! X- [; k: e- J3 g4 H
last update @2013-04-23 20:40:00& n, n6 V9 n) V& @1 _: P
+ add info table
( V& i# t6 ?* s0 [# I" R- N! Tupdate @2013-04-22 14:54:00
* h; {9 `( I5 W) x* M: @# h+ add dom events
3 s8 `9 j1 O: `7 r5 F" e& bupdate @2013-04-22 12:47:00
" H4 L5 U3 {8 t! U+ add getcurrentsrc button6 ?0 \5 Z# _5 I, _
</p>
: u2 u. d3 V) v5 s<p>) l  \# y( j  K( q  l* w& d) W
view code on <a href=<a href=>" n; U5 y& q0 T* ]- H- E
> target=_blank>learnshare.github.io</a>. 2 x! s2 s; w, L& ~: e3 i" d5 l
api reference: <a href=<a href=> target=_blank>htmlmediaelement</a> and <a href=<a href=> target=_blank>audio/video dom references</a>2 k# u+ Z" y+ U+ I  w
</p>
5 x' @! S& @% y  K% @</header>) F2 F3 t+ {* e
<article>% ~2 I+ s- l, @3 C3 g" W+ N# g$ |! g
<section>
. k- u) t8 M! g% H" L' U6 L<h2>audio element</h2>  ]* D: K5 K% K& k# I+ B
<audio id=audio src=./media/music1.mp3 controls=controls></audio>0 T% c6 [- `: R; D
<p>open the <strong>developer tool</strong> to view console logs.</p>
; t- |. f# g6 V& O3 F# U8 b</section>
$ n' h' x' H0 V6 M* s& P: W<section>% P/ L% v6 w' H5 |1 o9 E8 y
<h2>controls</h2>
- w' t- ^+ d3 p1 d<button id=play>play</button>7 {, I! q- `  L5 ]4 [# O! }5 S
<button id=pause>pause</button>
- n, _5 M: \6 K+ p9 B& G) Q( J. \3 Q" N<button id=get_paused>getpaused</button>
4 \1 A$ s, ~1 i0 N' X9 H9 G<button id=get_ended>getended</button>
; P7 T' d4 @' G) g
. I( e9 N8 b2 T<button id=volume_down>volume-</button>
2 c+ s; M! i1 K* O% j( I1 S<button id=volume_up>volume+</button>9 P9 {; C7 H  i% ]- f
<button id=get_volume>getvolume</button>
- ?* L0 S2 C4 U, w) {  J+ t& V9 ]7 C3 R' P  o6 v7 j( D: D
<button id=get_src>getsrc</button># O2 Y% N- O! ]/ u, a
<button id=play_music1>playmusic1</button>3 q# {2 I) d& {/ J/ f8 [
<button id=play_music2>playmusic2</button>* H" `8 o: G9 f  i  q
<button id=remove_music>removemusic</button>
  k$ }; o) B, ^$ `: u; r& L. W) `<button id=get_current_src>getcurrentsrc</button>
  ~0 H. V% R/ c4 W; g$ f
( d; o" H* `5 w2 G) z<button id=get_initial_time>getinitialtime</button>; _' _' j, V1 k9 b
<button id=get_duration>getduration</button>
+ K0 C+ }; a& _$ D<button id=get_seeking>getseeking</button>
' n# a0 E: ]9 B% R( P3 E<button id=jump_to>jumpto_30s</button>
; }- N- a9 O- \) w4 K. R  \<button id=get_current_time>getcurrenttime</button>1 X2 B- x' y* [& Q1 p
<button id=get_played>getplayed</button>
8 t: o; c; ]( q3 _3 R# {4 ]
6 c8 r. g, C6 \( o<button id=autoplay_on>autoplay_on</button>
; w. r- O, K( R  Z<button id=autoplay_off>autoplay_off</button>' O% u9 [# T/ o
<button id=get_autoplay>getautoplay</button>
1 |0 U3 u+ Z8 e; y: F5 C+ T% {$ R: n" _* f# x$ {+ U% R8 H5 Q
<button id=controls_show>controls_show</button>% k7 i: K: O* A
<button id=controls_hide>controls_hide</button>( Z6 s3 m% }5 Z1 a
<button id=get_controls>getcontrols</button>6 f9 T* y) ]6 \8 x9 ?1 Y2 D
( m$ ?+ N* X# }3 h
<button id=loop_on>loop_on</button>
  \' Y; G8 B) L' L<button id=loop_off>loop_off</button>
) x; R! y, x# \: o2 Y4 W  U<button id=get_loop>getloop</button>
. P9 ?- ]( s8 Q, `$ H. B6 S' N6 {2 x0 d4 I1 [
<button id=preload_metadata>preload_metadata</button>
% E; k' h$ [& |9 p. M4 Y9 w<button id=get_preload>getpreload</button>( @% w, C2 b& _3 {0 t! r) A
7 R0 Y; j0 m7 W1 Y. ?0 K5 A! A
<button id=get_default_muted>getdefaultmuted</button>
- m  T2 [; I$ y/ w<button id=mute>mute</button>5 M' L( C- N4 T
<button id=unmute>unmute</button>$ @3 w, h1 O! f7 ~5 j' |" {
<button id=get_muted>getmuted</button>
1 x, v3 W1 c4 u* v) Q# i$ A( m3 V. W% [
<button id=get_default_playback_rate>getdefaultplaybackrate</button>/ j  `' C5 {" c/ C5 D& R  h# Z! g
<button id=playback_rate_down>playbackrate-</button>
# z- s- m# ]. h- {<button id=playback_rate_up>playbackrate+</button>+ b! Z$ _. X8 g/ e& Q  g
<button id=get_playback_rate>getplaybackrate</button>6 Z- \. D% W6 @/ B5 @
2 R) I% \6 X$ H$ y" b% W
<button id=get_network_state>getnetworkstate</button>; W! Y* Q1 t" G6 y1 H( y
<button id=get_ready_state>getreadystate</button>
$ y- W8 m; D5 J  ?<button id=get_buffered>getbuffered</button>) W7 f2 A: x3 J; q
<button id=get_seekable>getseekable</button>* g: Q" q5 w; q3 L0 m
</section>
2 `5 N4 R# C/ e" N' L: u1 T7 U9 N</article>8 Z" K8 F0 W& E1 d
<aside>
2 W7 F% D6 R2 y$ ?) E% e' f<section>
5 ?/ c* g1 l# L; Z9 m0 t$ k<h3>player attrs</h3>
' z8 D2 {& A. F# ^<table>. v8 N9 Y- _$ e. j8 S0 C6 [
<tr>
+ t+ v# ^0 `# m& E' L/ a7 }<td>autoplay:</td>
2 X' O8 ?8 H: n/ }0 S/ \9 t8 N<td id=autoplay></td>1 [& v. Q1 L5 r
</tr>
2 }; `/ N7 ~7 T/ y<tr>$ C5 T2 ]) Z' t7 Y
<td>controls:</td>" ~/ C/ n' }- `5 `/ g
<td id=controls></td>
$ I2 _3 ?% R4 g5 ]( f$ _) ^</tr>) x) p8 y1 |2 M3 x/ c3 E
<tr>1 l/ [& Y: w7 f* }# ^
<td>defaultmuted:</td>
0 _1 f  c) }: _- v5 g2 S% Q  c, u<td id=default_muted></td>6 h& B& z& u" i  u( m+ i6 S* r# X
</tr>7 O8 V) d, t9 j' a$ Q! j9 I
<tr>
& h( j" b- l' [<td>defaultplaybackrate:</td>
5 Y; B! M% V7 L8 u3 {& i<td id=default_playback_rate></td>
0 F$ c* W7 K! [2 P/ \" ]+ z$ F& }</tr>% i* c; L4 n! u
<tr>0 r! Y) a0 u; f1 G% E7 l" V
<td>loop:</td>
. a5 ~  p. _9 V# }. U<td id=loop></td>
5 z  r( O% h+ Q9 A* R</tr>0 d, R2 z- W' m" Z3 ]. ]( F+ m
<tr>
4 w9 X* w' z9 T" F, Z<td>preload:</td>- S0 j6 Z+ T+ H2 M
<td id=preload></td>
/ C3 F7 ?- s. R</tr>$ i3 p3 `4 L$ Z" U' j
</table># |, Z/ `$ S8 E- R3 B
</section>* g$ o! q9 t: U& d" N. y9 c
<section>
) _% W2 B+ p5 J( |<h3>player info</h3>
# T; i* Z6 C( @# X$ C# Z<table>
" C5 L5 ^: N: `2 I<tr>
" ?+ Z: Z1 ~9 N3 b! \<td>src:</td>6 x4 h7 E; q) Y! [& U7 B- N
<td id=src></td>/ z9 I3 y  C; E% g6 P
</tr>
% Q4 J- t- {" G8 e6 Y8 F<tr>3 m. ?! V* k7 W, Q( g$ {
<td>currentsrc:</td>% [- {& }: D' T2 j: t; f5 n
<td id=current_src></td>
7 c% I; L6 J/ ^, B8 k/ }; X, X</tr>
) |% u6 O% D& m# o& U/ G: i1 x5 o" W) \<tr>
: `  c% ]3 G- f: @1 N' K% k<td>duration:</td>6 g) n% B) ^$ _+ ?& {1 y7 z
<td id=duration></td>
: i8 w  E: C7 p! `! u</tr>& F/ T) o3 a8 n: C: g
<tr>
3 g) H! X4 L  }<td>currenttime:</td>
& ?' a( Z( w2 W4 B) {: j7 F( y# @<td id=current_time></td>
: c; a: u" m( W& V</tr>
% C( v' u  q  K1 ]8 M* \. V. L<tr>1 o# K. A4 z" a, C: S/ u
<td>ended:</td>
2 J# [7 W( Y& p' I' j<td id=ended></td>+ N$ D! R" I1 J8 v+ B  U
</tr>* h# S! e& q# I5 O1 O
<tr>9 l+ l' U7 j2 B8 g# M# _- [3 {8 h# ^  N
<td>paused:</td>
, ~. S# h/ i7 s- M<td id=paused></td>
* [. S2 b6 Z( k7 g0 m4 k; ~' f; U, S9 V</tr>
. y, Y% j/ ^1 f, v) x<tr>  b0 A5 X2 Q4 ]9 O) D8 h" G: C! F; W7 _4 x
<td>muted:</td>0 r% L6 E' [6 q& Q
<td id=muted></td>
2 F5 w6 F$ t- O/ v</tr>4 F, j! B- \2 ~# q9 [6 |4 ?5 M
<tr>1 u: R* Q8 y4 ^. U
<td>volume:</td>
, Z) z6 t* U1 H<td id=volume></td>
' y) G* d" C+ l, P</tr>* d* @, h* c8 }9 Q; g
<tr>
* }+ D/ W" f% j' j- S) N9 @<td>playbackrate:</td>6 J+ c- s% b) Z$ r% u; ~0 D0 z& J4 L
<td id=playback_rate></td>
3 v; S' ^  k& a: m</tr>% Z" ]6 \/ @- W1 p/ @
</table>; i$ Z: G5 S/ M2 ?
</section>
. n8 _& H1 j* _/ k4 e0 _; P7 o<section>" w( k6 P2 f, O$ Y, H1 h
<h3>play status</h3>
9 {/ r2 W. \% y! ?<table>7 w& l, |% \6 p. V& w! T0 O/ c
<tr>/ A; p8 M8 O$ G6 W6 G# i
<td>networkstate:</td>
* }0 R5 e) P; w: ^. G+ f<td id=network_state></td>
; {: O+ w' f  a- p</tr>0 B1 J' _: ?/ a% K2 r
<tr>
4 L0 z; y* t) s1 T) {<td>readystate:</td>8 C4 A9 V" m0 f7 A, s
<td id=ready_state></td>, D, F6 P& [/ Y2 g; p% c
</tr>
- g6 g2 s3 Z/ P6 J- f: M- u/ t; F<tr>
+ E% \, D- N8 M2 D% @; T! Q  O<td>buffered:</td>6 i5 n, G9 }7 Y0 a4 ~/ w
<td id=buffered></td># w0 w  e. r# I' ?( h+ J
</tr>* r  W) `- `( T
<tr>. P: _1 P6 L5 ?+ K8 Y1 X, a
<td>seekable:</td>; J: R* }$ J. `/ ^8 f( h6 F0 v- @
<td id=seekable></td>7 `0 B7 N+ n0 u2 f: o. k- \
</tr>
- p2 \+ ~4 I8 [) v8 i$ z/ |" _+ h$ N<tr>, D3 q& y4 p/ v& J2 l" h
<td>played:</td>
1 V' g1 e$ K) v; Y<td id=played></td>
: U9 m. O" D9 S</tr>5 n6 p; _7 j& s; E
<tr>$ Y  f* l. N- C
<td>error:</td>$ Q! F  G4 R: S5 t6 ]
<td id=error></td>' h! w" U0 C& A2 d. }9 c6 u
</tr>
  B6 S. @% A0 Q3 ^</table>, l- Y! {; _8 M5 `" R9 g
</section>7 E* z5 d6 {7 s- i
</aside>6 a  X3 r" z( X4 l
</body>
% _6 M( s; @1 K1 Y+ |* I& k& \0 w</html>/ H8 X0 w: x: S/ i

6 i( n+ A' K8 P! W5 z8 _1 J% l, taudio-controls.js8 f. o: q+ C% t4 r8 F' J

; U* M! P# o/ r1 M" M- J' z代码如下:
/ @! L3 N/ ]8 ^; b: }
window.onload=function(){
9 D, r+ j; f) A+ C// get autio element% G! l+ ?( [$ J  l6 P
var audio=document.getelementbyid(audio);& f5 H8 ]& e) \" s5 m
// play()$ b( E8 ^, K0 w, N
document.getelementbyid(play).onclick=function(){
& G# P" `9 f9 Z8 B5 z, Daudio.play();# X( r0 W7 J' K7 R
console.log(play);6 t2 t- ]8 U# |3 G: g  `+ J# O/ i% |8 d
};7 E6 w) `4 j' f0 Y
// pause()8 j& Z% K! u# {* ?
document.getelementbyid(pause).onclick=function(){' a0 Z$ o: y- n2 B
audio.pause();- L. i' E3 x4 b% n( i
console.log(pause);
$ J/ e( V; E& A3 e7 W% G! R5 }7 x};( q6 R9 t3 N) q/ w0 _7 c7 ^( w/ m1 }
// get paused8 B) i- X% D% m
document.getelementbyid(get_paused).onclick=function(){
9 n: F+ M8 l$ _3 E( u( r" Y- tconsole.log(audio.paused: +audio.paused);0 R$ T' j( J4 Z4 q8 m3 m8 f
};* v  A3 Z# `' M5 z1 j
// get ended
. `5 S, I$ E1 d0 {8 k5 o3 Zdocument.getelementbyid(get_ended).onclick=function(){2 y% B3 D, ?) N; j; b* ]
console.log(audio.ended: +audio.ended);. U2 o7 v3 [% ?7 M$ Y
};: v! F) p9 L# `: l* \+ [6 C$ G
// set volume-3 M) a" ^! |# J6 O
document.getelementbyid(volume_down).onclick=function(){
. t! h' d0 {1 l5 t) Laudio.volume-=0.2;
9 E3 ?5 |8 K6 N* Iconsole.log(volume-0.2);6 U2 f% w( v. Q% B
};
4 Z: n6 D3 @1 E2 [0 e/ s// set volume+
3 V5 _% K4 i; @3 q4 G' \6 Bdocument.getelementbyid(volume_up).onclick=function(){
- B8 o+ r8 f+ k6 E4 `audio.volume+=0.2;
  G* N% V: u' r9 F7 Q# hconsole.log(volume+0.2);
$ M2 F; B4 Z2 b! _6 }3 {};
" H" Y& @( |: F, a// get volume3 g. `  _% s3 Z7 ^  \
document.getelementbyid(get_volume).onclick=function(){2 Q' z3 [& B& v) ], l! z
console.log(audio.volume: +audio.volume);
, Z; Y6 B$ J/ `) T' E6 k* ?};) M9 m6 a3 F( {) L
// get src
: _$ z3 Q, X9 C: xdocument.getelementbyid(get_src).onclick=function(){3 R& P4 Q1 k7 v% ~& I
console.log(audio.src: +audio.src);
% d- S0 }: R! ^4 x5 D};
! F' J% d' C9 \( x, B// set src_music1
! v, t, _  ~% w" kdocument.getelementbyid(play_music1).onclick=function(){
! j- T. E0 ^0 g* }3 V: {/ u- d/ oaudio.src=./media/music1.mp3;
" m2 |; E$ a6 Gupdatesrc();
- v& D; F! O9 G* {" @updatecurrentsrc();
% V( l8 Q+ E- m  gconsole.log(play music1);
# @/ P3 {5 F! O3 Y/ g- n};+ m$ c! ~$ I( R: U& }6 [
// set src_music2
4 i$ |, k, Z3 m& B+ \document.getelementbyid(play_music2).onclick=function(){
+ Z/ r% q9 N" ~0 D( ~6 a: Gaudio.src=./media/music2.mp3;/ N; q% Y4 I8 B, g2 F1 X5 P/ B0 n9 q
updatesrc();
0 |9 }0 S. Z# `: l' F2 ?8 K6 Xupdatecurrentsrc();
; W. }9 m) A2 V$ H* V% Z1 h% v6 _console.log(play music2);
6 R8 s7 u* S) [3 {* n8 ^( E};4 \. J7 }, u; z; t/ s
// set remove_music
7 ?% Y4 C7 ~  b- Y9 d* j' ?. @  Ydocument.getelementbyid(remove_music).onclick=function(){7 R7 v! S* q: x
audio.src=;
8 e5 a# c# {0 S- R' @. Z$ f# x8 d* b2 pconsole.log(remove music);
3 e6 V8 G9 Y- j8 T) g};- j3 M% T6 S, F+ U
// get currentsrc
7 Z1 G4 ]) R4 j/ b; }document.getelementbyid(get_current_src).onclick=function(){+ [2 U# ^2 w+ N; @  n# x# z
console.log(audio.currentsrc: +audio.currentsrc);" x, {9 d; E9 d4 F9 t! X- T
};
+ A0 \! r! }8 ?9 L) Z) C6 @/ b// get initialtime" k2 f9 M- ~+ y
document.getelementbyid(get_initial_time).onclick=function(){
5 t; K7 e/ _) P) C! g. `) o& q, Econsole.log(audio.initialtime: +audio.initialtime);
$ ]8 L; c4 c% |. {3 O2 E$ R# ?};1 F' F7 Z" x% u, n8 H
// get duration, f% o5 ]/ I: J+ {
document.getelementbyid(get_duration).onclick=function(){
! O* o3 G% A( R9 A  B8 k  Lconsole.log(audio.duration: +audio.duration);
7 h6 M6 n2 _  F};7 }- G( a# c3 ^: l- @& @
// get seeking3 a' \4 c. b; Z! E- T* `
document.getelementbyid(get_seeking).onclick=function(){7 p6 Q( l' f3 ^# R: d5 |3 k2 R
console.log(audio.seeking: +audio.seeking);
+ l2 D& l. X. G) n# {! n};
# [* s$ j3 K. B3 q' I/ n2 K8 C" \// set currenttime# v* Y* w2 f1 e0 _2 |2 k
document.getelementbyid(jump_to).onclick=function(){
/ x' x5 R( V& n- d9 T( s! D7 i; Paudio.currenttime=30;
  {4 K0 s2 B5 `0 {! ^' Q% r% cconsole.log(jumpto 30s);
$ `1 e5 u) H/ B* G& ]' M0 ?};3 O) ?$ [7 [/ C, m0 d
// get currenttime+ {! X( d4 n7 m; ]6 I
document.getelementbyid(get_current_time).onclick=function(){
& _9 z. k/ I9 x3 m! I0 Gconsole.log(audio.currenttime: +audio.currenttime);' S( m" h0 ?* q5 t& d1 F& R* Z
};0 P# _% k3 ?  c7 x
// get played
5 a6 p( F; Z6 `" y/ T% qdocument.getelementbyid(get_played).onclick=function(){0 c' U# [5 w* C. U
console.log(audio.played:);
# G. o5 u$ A/ l) K. |& Kvar ranges=audio.played;3 F$ G- N" z0 b6 K
var n=ranges.length;! ?# G, E- z$ U1 M. u
for(var i=0;i<n;i++){
& ]& X5 K* A9 fconsole.log((+ranges.start(i)+,+ranges.end(i)+));, [% b2 y! U- J" D3 G
}
6 z1 o& ?7 s- d% p6 ]9 H' ~};  J9 C# F; `8 J+ S
// autoplay on
2 j9 o7 j& b; V6 {* cdocument.getelementbyid(autoplay_on).onclick=function(){3 x! z$ |/ a; F+ E  g+ q
audio.autoplay=true;
  ]  O, j8 a3 ]5 Q' Qupdateautoplay();* E' |1 {4 T$ b' w+ f/ t% `
console.log(autoplay on);; \% U4 A- U  D+ u/ \2 R9 [2 y. O3 x
};' P3 ^& d0 X* M6 q6 b
// autoplay off2 f! ~1 A; N5 x9 A  z! V' y
document.getelementbyid(autoplay_off).onclick=function(){8 g4 m. s; @5 _. x
audio.autoplay=false;% L- O- l7 e+ R0 v
updateautoplay();1 b  B1 O- n9 P
console.log(autoplay off);, `  V2 P9 x0 g  {( l1 M
};
0 n: O$ r/ e5 w' o. u// get autoplay
8 ^( o6 B5 t! l3 Q2 pdocument.getelementbyid(get_autoplay).onclick=function(){
$ I8 u6 x2 u* Q* @; q0 wconsole.log(audio.autoplay: +audio.autoplay);
) ?2 W" ?" c) Q' Q, B# k" b* V};; B9 y4 H$ [* g6 B* A
// controls show
! C+ j# ^$ _1 mdocument.getelementbyid(controls_show).onclick=function(){
, B, r4 q# N3 p/ x) Eaudio.controls=true;
# p" }" g" A; \8 J: z; }updatecontrols();
( k$ |$ e! A% g6 t' uconsole.log(controls show);
% a( U* u4 Q! O1 s4 B! L};- q' a! V& B3 P
// controls hide
" K* ^5 H2 _$ n4 \2 L1 Sdocument.getelementbyid(controls_hide).onclick=function(){
6 \* U4 H# G( r$ f" L: ~7 _  l+ z7 qaudio.controls=false;9 X3 t1 q$ v! F# O
updatecontrols();
* l9 R) K2 O3 L5 jconsole.log(controls hide);
# ?+ v& Y4 e' o9 [, \: l3 R};& Q$ Q) M* t/ ^; F% _. H6 B/ L: \* h
// get controls& Q8 h: K, l. ^4 q  W) D
document.getelementbyid(get_controls).onclick=function(){
* V, G; U  N2 @! Iconsole.log(audio.controls: +audio.controls);7 ]4 _7 A: q6 _! h" C( o
};/ G% {& B7 O: R" X
// loop on7 ^" j$ M) B/ y' G) _
document.getelementbyid(loop_on).onclick=function(){$ T3 g8 j* |9 o  m, j
audio.loop=true;9 j  S1 D$ H% b, A6 l& M" f4 O' u
updateloop();
5 k$ l7 T1 b8 _& Yconsole.log(loop on);
0 p* S! X1 O9 f4 E};$ f( A' f4 x9 v  S
// loop off
0 B7 `/ z, S8 r0 e  R& Ndocument.getelementbyid(loop_off).onclick=function(){
6 }) m1 ?) d7 p. e2 c. maudio.loop=false;. u  E# i8 y( W7 H( V8 _
updateloop();; ?. h) T) F' k2 O
console.log(loop off);
: n1 U% H3 h1 ^+ _7 J( {# i  m};7 `* H5 a& Y" N; Q8 m& {3 k
// get loop
) v/ K% ^8 Z  ~document.getelementbyid(get_loop).onclick=function(){/ J( X! v" n6 d9 [; W
console.log(audio.loop: +audio.loop);
. p1 d9 z0 {$ M) R: _};7 P) q1 D* S/ L" H- c/ V+ ]) ?6 j9 u
// preload metadata1 y) C7 `9 Y1 X' _3 l
document.getelementbyid(preload_metadata).onclick=function(){
* o9 K3 ?5 R3 A; [- baudio.preload=metadata;
7 ~5 W- o# F  U5 A' g( b/ `  dupdatepreload();
0 H, z9 X4 ]1 y6 T+ t& E) Nconsole.log(preload metadata);' q! E4 ]6 W& I  P7 G
};
$ C+ ^% y- O7 r$ t* `: a// get preload
, X/ n4 O$ Q+ @document.getelementbyid(get_preload).onclick=function(){
( ?# f* ]. J# t3 Iconsole.log(audio.preload: +audio.preload);  o1 t, n0 r& v* @" J( v% O  g6 Z
};
# k. a2 h2 _) Y+ e. Y- P8 {// get defaultmuted
: P6 F; G3 S' _8 |document.getelementbyid(get_default_muted).onclick=function(){
3 ]/ Q8 D+ y7 z+ zconsole.log(audio.defaultmuted: +audio.defaultmuted);
- F  [* S6 M7 x};) l. m, q2 V+ R8 z- ~3 F8 {( M# K
// mute
/ ?6 t- G; Z+ f+ ?+ }document.getelementbyid(mute).onclick=function(){+ M$ ]3 r& ^9 Z$ J* O4 t
audio.muted=true;1 C( ]* D& i+ A
updatemuted();$ s/ k0 e2 \' C, B, v" x
console.log(audio mute);
! G. s2 o% D; t5 D' [3 |6 w};: }0 h( I% W/ ^6 B" b6 @
// unmute+ M1 a1 V4 h2 |) u: K
document.getelementbyid(unmute).onclick=function(){- s. }) B9 J! \
audio.muted=false;: N6 \  Z- x7 `. _8 P; h" h# I" S
updatemuted();9 c, g; P' N3 _$ n2 |9 o7 Q! g
console.log(audio unmute);' T8 m7 U+ e5 d; T0 z. v
};' G; g7 Q) F3 n) {! D
// get muted
& z  J( a# ~! s" K4 _4 adocument.getelementbyid(get_muted).onclick=function(){, U' ]( j/ w3 M
console.log(audio.muted: +audio.muted);2 S7 L, ?9 @! h0 \6 I0 h
};; Y6 e- v9 x' [3 ~" K4 N/ c# ~( M
// get defaultplaybackrate
% [) `- D$ P+ R9 F; L3 _document.getelementbyid(get_default_playback_rate).onclick=function(){
( T) b. I- j; [! E6 oconsole.log(audio.defaultplaybackrate: +audio.defaultplaybackrate);
& e* o- y+ i& i. X* Q. y4 h' d};7 c" a2 b: _7 E' X  j* n
// set playbackrate-
# A: d( X2 ]( E' Hdocument.getelementbyid(playback_rate_down).onclick=function(){
: E) g  r6 T1 j; ?) p" F, ?  Uaudio.playbackrate-=0.2;; n3 `7 Z( A0 b- j" D' z
console.log(playbackrate-0.2);1 I8 h: C/ |( u2 h
};/ V4 s( m$ r; E3 R0 U) v2 y
// set playbackrate+
) N3 X' R# b8 k, _' g; zdocument.getelementbyid(playback_rate_up).onclick=function(){
8 s& b  {7 J* c0 e" Y$ Uaudio.playbackrate+=0.2;
( e# O( y6 p6 j3 L# l( r8 r& P- Pconsole.log(playbackrate+0.2);% H8 `4 B- w: B' v0 C$ H$ ]. `2 k
};' L9 y% Y/ C% g+ d
// get playbackrate
& U7 W9 f) X5 C% h  e* q- m) Hdocument.getelementbyid(get_playback_rate).onclick=function(){
) }5 G+ l3 r$ ~6 y: Uconsole.log(audio.playbackrate: +audio.playbackrate);( ^3 e# q, g$ \' w+ Z% X
};
5 R7 b. d; B8 m" e! b+ E// get networkstate3 P* h  ^7 A& r3 ^! p, V
document.getelementbyid(get_network_state).onclick=function(){' F8 P# n& `3 G2 n  b4 Y5 D
console.log(audio.networkstate: +audio.networkstate);
1 f& c, T7 _; ]1 I( j1 B1 r/ n};
4 g0 k: d3 J( k( g// get readystate
0 R% d' T5 V) ^3 a/ Sdocument.getelementbyid(get_ready_state).onclick=function(){$ |6 i& B& \4 J0 ?$ z# L: B
console.log(audio.readystate: +audio.readystate);
1 P5 ^1 M$ E6 ~4 s6 v};
: O; q" Y0 _3 q* s5 f& X// get buffered
& l$ A6 H; c( ]  M2 b9 t3 l: mdocument.getelementbyid(get_buffered).onclick=function(){) |- w! X. G+ h: ], a& X3 I
console.log(audio.buffered:);9 @7 F! I# F4 K
var ranges=audio.buffered;
! O5 W, C1 n! p$ `var n=ranges.length;
% \' O: h5 R  C0 y; }for(var i=0;i<n;i++){
! m0 m* o8 S% K- n% Z8 Nconsole.log((+ranges.start(i)+,+ranges.end(i)+));
; Z& P. k  j' }1 P& W4 E* ^% B}
# m* \( e0 N& ~( e# Y, k$ h};7 R1 E5 B  r9 q5 ~* `0 X
// get seekable2 v9 Z4 T! w6 o6 A/ [
document.getelementbyid(get_seekable).onclick=function(){$ A- \4 L. b3 m3 E+ J8 T
console.log(audio.seekable:);
; z& t& o) X+ W/ P4 K4 r* v1 }! Mvar ranges=audio.seekable;1 K# m! \: ?2 B' i6 E( I
var n=ranges.length;5 s4 g" w( H% S- ?
for(var i=0;i<n;i++){) [* {/ \5 k' }' X
console.log((+ranges.start(i)+,+ranges.end(i)+));3 N3 v9 T& V5 r  w! {( y' r1 f1 @7 G
}
+ O4 P9 e( _, I( Q# x};5 F# K! \: K: ^! Z4 v+ u9 `5 R
// dom events8 D8 p- Q8 T1 l" `3 t3 }' Z0 F
// abort
1 r7 n' e4 I" R4 D2 y: y) zaudio.addeventlistener(abort,function(){
# a* D9 c+ ~: ^- P# B' Mconsole.log(event:abort);% r7 \" Z0 ?& ^
});2 O$ I3 {: e9 ~
// canplay: Y6 G; c4 g, J8 [; m" ^6 ?( s0 B
audio.addeventlistener(canplay,function(){
9 j. l, F8 c: x* q* j7 nconsole.log(event:canplay);
+ _. _4 ]5 w9 Z0 ]3 v' r7 g});
6 i) t) K* I$ o9 I7 J( ?// canplaythrough
4 \* \: M/ X; W  q% L" d1 Z( xaudio.addeventlistener(canplaythrough,function(){
- g) e2 I, w  ?) m3 F5 Rconsole.log(event:canplaythrough);
! w+ x4 f: O2 h});$ p% Z4 b5 A( O4 @
// durationchange
' O" H2 `$ ]: x# [; `" `+ _audio.addeventlistener(durationchange,function(){" ~* R9 b3 S" |) U& X' H
updateduration();
1 I6 V5 p: l8 J, D/ Bconsole.log(event:durationchange);
; I$ k( H& Z# r# h& K! z});6 @" ~2 k8 B. O+ E
// emptied
% a8 \+ r" D1 B. s: J" yaudio.addeventlistener(emptied,function(){
; d) \  z4 X# x: {updatesrc();) M  q4 K* t9 l9 T5 [; b$ ]( E
updatecurrentsrc();
" S. g8 K7 J, G, t" s6 a/ T. lupdateduration();
5 p. g/ [5 P2 X0 dupdatepaused();
3 D3 B" o3 o; yupdatenetworkstate();" @! u4 Q) i% h5 L7 y9 T# R
updatereadystate();
9 Y4 q/ P  |9 T( Lupdatebuffered();+ p' m; T9 w% k6 p& o' j
updateseekable();
% n7 w$ r3 M' g! v$ W  c$ [: l' |& |updateplayed();
& U& j* d: X. ]5 |# O) Hconsole.log(event:emptied);5 l" K, \0 }3 {6 L
});
! G! K5 B) A( ]. x" b; m$ ?// ended9 ]4 x4 T3 j. R/ c, [" S
audio.addeventlistener(ended,function(){
5 j; P0 v& t8 x! b' zupdateended();
! W6 C: I$ ^$ Uconsole.log(event:ended);% y9 [" I3 r$ T. D
});
$ f7 a+ V" d% A( N4 i// loadeddata4 R9 }3 T! |5 z2 B% I) i0 t& r9 E
audio.addeventlistener(loadeddata,function(){
8 a4 M( E# r1 D, k  F& {updatenetworkstate();
: f$ K  _; N; m8 k! K) dupdatereadystate();
. J' V0 O( A$ C) ?* {updatebuffered();! O( P, n  [9 z2 w; ?# B
updateseekable();2 h) ?) i2 ?. P& A& N  c' N- K
console.log(event:loadeddata);
3 e5 t; C0 d/ R, I; D3 v' Q});
, _! P1 d) n( A' u// loadedmetadata
. @% [3 \, Q3 {3 s* maudio.addeventlistener(loadedmetadata,function(){
2 j' R; J  v& Tconsole.log(event:loadedmetadata);
2 V% p$ m& K- `1 A});
- g2 B1 x1 ~' E# U6 Y) f5 c// loadstart+ I4 [2 t/ F" T# |
audio.addeventlistener(loadstart,function(){! C. L" E/ y* F9 [# Q$ b0 f
console.log(event:loadstart);3 Z* ^3 r# F! x% o7 c8 [
});9 z  z$ K$ A4 E. m8 F" n
// pause
/ ]% q: W+ d) f* Eaudio.addeventlistener(pause,function(){' H- r! ?* G3 D- ]; ]. T/ C! m  ~
updatepaused();; ?0 \; U+ v% M$ q0 x' c9 |% s
console.log(event:pause);
6 M# @: Y8 ^9 P6 `% W+ G4 p' g* d});/ ~9 \6 ?8 k, |5 r2 F
// play
' E; a) Y# c" c; [, Taudio.addeventlistener(play,function(){; N4 s  o. V9 J+ \7 L  x
updatepaused();
! f0 e( @8 q  x: B( Wconsole.log(event:play);
. l$ e0 l0 t* V& x* `7 }" S});
) j# ?6 c# s, P  M// playing
. B# l, v' R+ Z# \1 K# L9 Raudio.addeventlistener(playing,function(){
  ^" b+ I5 O/ Wconsole.log(event:playing);
& j1 s, P( |! {' K4 M4 ^( F});
8 S# G, m% J0 u// progress. r! x6 G5 `, I9 C' i
audio.addeventlistener(progress,function(){6 q* ]8 _3 T% G2 f
updatenetworkstate();/ M2 x% W$ j) B, j# z
updatereadystate();. C4 d+ f. x5 I! {6 p
updatebuffered();
/ V" B2 F! S4 y/ _. i  supdateseekable();9 |( S+ g1 J. e5 Y. S* T7 w
console.log(event:progress);" F2 {2 `2 U% o; S+ u. a( K6 E1 Y
});
! Z5 [( L$ N0 s; K// ratechange) X  x. C5 Q% ?
audio.addeventlistener(ratechange,function(){
7 @9 t& R, [1 d$ v. n* m- w4 Kupdateplaybackrate();. j: R. V3 b* L  X, y6 D, `+ f" \
console.log(event:ratechange);
* a1 D1 o% T/ o& l" R});
* k7 k9 I4 p9 P* ~4 l// seeked
" X+ e0 E6 v4 p. L( b6 baudio.addeventlistener(seeked,function(){7 S6 E4 l! V$ z4 C4 B0 ~. j" c, |
console.log(event:seeked);  d$ R! q4 i. G4 I2 c
});
/ |3 q* H0 v2 }9 Y. R9 p; {// seeking
/ w# Z6 y& X+ L+ n% m# ]6 baudio.addeventlistener(seeking,function(){
) K! v# T: [7 J  A& K/ \  |console.log(event:seeking);
7 O& ~1 k. q" K+ r& T});
& a* D8 o5 @: b7 H// stalled# ?* a3 g" ^6 s
audio.addeventlistener(stalled,function(){
6 h. k# A# V4 H: [: `console.log(event:stalled);3 L8 t; |  h2 ^0 o
});
+ M$ P9 k5 g* g% i$ l0 A// suspend
/ f4 i/ w  a0 z2 Daudio.addeventlistener(suspend,function(){
. l5 g9 x- Q9 \& ~% l) \& j( y# `console.log(event:suspend);+ Q- I6 R3 n/ C: }1 R& [
});4 M: x" \$ m1 k
// timeupdate+ q. H3 q8 S0 Z5 Y- k
audio.addeventlistener(timeupdate,function(){. B2 R$ s2 O& @" y: s7 k# V
updatecurrenttime();- Q" p. b9 }1 m/ h( l, B8 ]5 _0 _0 w
updateended();
# j( i, H" v5 X3 hupdateplayed();
+ X. y: e. c* g( lconsole.log(event:timeupdate);* I& \- {/ U& [! F- P) `
});! A8 R1 O% z( j( C$ M% n' s5 M
// volumechange
! ], v& i# Q+ M' }# q: faudio.addeventlistener(volumechange,function(){
! V+ `- ]. F4 A) `# Supdatevolume();
' {# O4 `  m# ]2 b; wconsole.log(event:volumechange);2 {. X3 E) C" N9 q7 _
});8 X) x& O" x# C* p
// waiting3 g$ k# c" ^6 K) _# S, {2 C/ _' l
audio.addeventlistener(waiting,function(){8 _  p" g" N( a  ~6 z
console.log(event:waiting);. n$ R( a2 Y8 E; H/ W& P4 @7 u7 j% A
});
' P& I  p" _/ y$ q, A# Z: Hupdateautoplay();4 z1 ^& C+ k+ @5 Z, N
updatecontrols();( h' T$ M% \- v
updatedefaultmuted();
! r- z+ }3 A# x' L; @( Q% Q0 g, Jupdatedefaultplaybackrate();2 _6 M9 L/ j  u
updateloop();2 Z) V/ q4 ~' N' q. g  a
updatepreload();/ K, H' O7 p5 ]" h
updatesrc();
% q" E: z, Y9 S0 O5 U/ Jupdatecurrentsrc();
. t, P; s9 c* ~5 l9 t% hupdateduration();
* a) O2 k" o# q+ iupdatecurrenttime();
' {; _8 M( t/ D  v9 @updatevolume();
# S) x/ C2 e1 f2 }! J) ?9 P6 Uupdatepaused();$ `- ~* n5 h4 y
updatemuted();
$ d# t. s+ J% `; h3 v2 [4 P, Rupdateended();
9 `% @/ U% P: eupdateplaybackrate();5 K3 b6 G1 Z1 Y; G6 Y
updatenetworkstate();
* i+ i$ _& F; o$ [9 j9 W6 a, S4 {updatereadystate();
+ V' M% L6 R: l; {updatebuffered();. x1 A! s5 c/ l$ o6 L7 G! I
updateseekable();3 x( }' q  s* D; b/ |- c
updateplayed();2 z9 ], @. m; o/ t# \
updateerror();- t3 _5 I5 q6 l. x0 j4 h& W. }) ~  G
};( Z1 [# B* h0 P; S) L- C* Z+ s& b
// functions to update info table
# C5 N( u; i' H+ a0 s( O3 M& B// autoplay( K- z. X( c! w! o
function updateautoplay(){3 X6 O% Z% H5 V
document.getelementbyid(autoplay).innerhtml=audio.autoplay;0 D" X: e: w* M( A
}
3 F& C% N2 q) |% U// controls4 ]. p- S) J5 b, ^
function updatecontrols(){
+ k' j; [5 p4 S# Y9 h* Kdocument.getelementbyid(controls).innerhtml=audio.controls;. g2 R% S: c# v$ P9 Y
}
' L- S8 S' _& e5 f2 l// defaultmuted4 P; h6 C7 h! i. t, z
function updatedefaultmuted(){
  c7 W1 O: r1 D) Bdocument.getelementbyid(default_muted).innerhtml=audio.defaultmuted;7 k1 |9 @4 l! Q  w
}- Q/ V# a  ?9 s" q
// defaultplaybackrate
/ Y2 g) Q0 n1 V' E& Sfunction updatedefaultplaybackrate(){! q7 Q9 R7 D/ ]3 B& u
document.getelementbyid(default_playback_rate).innerhtml=audio.defaultplaybackrate;
! a* U, u1 r9 d3 a* W}* X! i" G: a) l% u9 B' j, |
// loop
7 h5 i4 `" ]2 K6 p) \function updateloop(){
1 @+ e) M7 P6 J, Y- T& c* Gdocument.getelementbyid(loop).innerhtml=audio.loop;
8 U9 {8 S) T3 `# V- K" Q}4 P5 j6 z& E0 k- t1 K( ]0 Z
// preload) ^& ~$ b2 ?: H8 S9 X8 N4 y: |
function updatepreload(){* j9 Q6 {3 a5 B  q9 ?
document.getelementbyid(preload).innerhtml=audio.preload;4 I! P0 i: O' V- b
}
7 T+ Q; [9 T6 _3 P// src- D8 l, k$ {* C& x4 _% _/ J
function updatesrc(){! ?5 L- S0 [6 O. G+ ]/ A
document.getelementbyid(src).innerhtml=audio.src;
, b% q* B# ~' P, S' h; E8 \}- m0 V7 _) u  K* q4 @  R+ e
// currentsrc6 y. m' P$ \6 r! V. v0 p
function updatecurrentsrc(){) l- J0 w3 |; ?3 j
document.getelementbyid(current_src).innerhtml=audio.currentsrc;
2 s/ w: D+ m7 [6 C# t}/ g: o5 w$ @. U. }7 P$ ]
// duration
$ r8 m) R5 F) L, p1 e4 Ufunction updateduration(){1 E. j; `7 `' b- N7 H
document.getelementbyid(duration).innerhtml=audio.duration;$ F% L) ~  T: I+ I, a' t2 z
}4 z, Z" s* z$ B) U0 \% |9 M
// currenttime! K' `( b8 F  u
function updatecurrenttime(){
/ N1 ~% h( @; ]2 h' i2 Ldocument.getelementbyid(current_time).innerhtml=audio.currenttime;+ e) G7 N% ^8 S
}
+ Z+ I+ ?0 J/ `: p6 s// ended
$ ~! Y' x# ^) L' J+ L% g3 @3 Kfunction updateended(){, \" l' K( ]2 G' t0 ^$ O# q
document.getelementbyid(ended).innerhtml=audio.ended;: F# M" y8 o$ ~1 C8 {! \' _
}& V! s" o  i9 V
// paused. K( r3 o; J8 l$ H1 W
function updatepaused(){
$ F4 |: V% L1 s* g4 ?, {/ l8 Z. ^: |document.getelementbyid(paused).innerhtml=audio.paused;
. k; t8 X! K7 ]+ F5 g* w}$ }* W* ?/ v7 k0 ?- p. `# G
// muted! t& k8 J( b2 _, e; f
function updatemuted(){
- {9 g% S% F6 w: J+ I: A0 Edocument.getelementbyid(muted).innerhtml=audio.muted;
8 B! ^5 W& K! P- z0 \}( x! f  ]- v+ ]( o# h- D
// volume/ ?5 U$ q2 @3 T, ]1 U+ e
function updatevolume(){
+ u" Q  a) f. M' hdocument.getelementbyid(volume).innerhtml=audio.volume;" G! |9 t9 c, R* F
}; Y, Z/ h$ \' a
// playbackrate, G2 x' o" @% T# f5 M9 @
function updateplaybackrate(){
/ [' L# G1 q7 m4 Q) \+ g8 {7 Adocument.getelementbyid(playback_rate).innerhtml=audio.playbackrate;- \: W" U6 c; {/ k; X# t, ?
}1 ~# o( `' V" U& ]5 G+ W2 B
// networkstate$ X% \. R  k$ l0 n9 X1 f' a4 p) E
function updatenetworkstate(){
0 [' {# h- Z7 b# \# ydocument.getelementbyid(network_state).innerhtml=audio.networkstate;
/ c9 L' S: }: H' U3 J}6 H8 @% Q# J8 Y' L$ k* x
// readystate- P, C& c* O: C  p5 E$ V! Q: G# E
function updatereadystate(){
5 p4 [4 F+ h  {* y% Z; |; vdocument.getelementbyid(ready_state).innerhtml=audio.readystate;; @3 A+ n$ K# E2 q# F
}
4 u9 C! G" h$ s! }// buffered5 W8 X. Q! C9 M5 u( X5 q
function updatebuffered(){0 w0 R4 P: o$ o1 [8 H' X0 e$ |
var ranges=audio.buffered;. o& }; M; J3 Q' w# A
var str=;9 _& W- j- f* I0 w+ M
var n=ranges.length;1 S% D  x& k5 W" m$ w0 c' t. l
for(var i=0;i<n;i++){
7 V; J' A( h1 P$ \! sstr+=(+ranges.start(i)+,+ranges.end(i)+);
% h8 f8 ~) N5 L2 o  t9 R8 `if(i!=n-1){
" L/ m  J$ O" @" x9 N1 Bstr+=
% A% ?& A& n$ S* ~( J;
! @' g* N- d; j5 V}+ R7 F2 F& }5 U' @
}
, P6 t7 g! X% Qdocument.getelementbyid(buffered).innerhtml=str;
# R4 f$ {& t9 k9 L' b0 \8 u}
# v+ p& F. {7 \- q" a3 m' k1 Z// seekable
2 {+ W" }! q" _0 c; L* H, g% a9 }function updateseekable(){  ~6 A7 q0 V3 f! O
var ranges=audio.seekable;9 ^- N; P3 Z9 X2 A0 k
var str=;
% U5 S2 s/ z& L' J0 ^var n=ranges.length;2 W# x0 ~2 s/ [% C0 `& \7 R* k
for(var i=0;i<n;i++){  |4 R1 }# {6 S: D4 w& h( |
str+=(+ranges.start(i)+,+ranges.end(i)+);
/ s. z. E. I8 F- [6 ]if(i!=n-1){/ K1 ^4 P: e, D- W
str+=& I6 p' f- n7 \1 y0 o: i) v( S
;$ K) `, \! a2 b0 l/ {  d2 R
}7 ?& Y! }, m/ J* U/ l
}
% o- o7 {% O: {3 _* Adocument.getelementbyid(seekable).innerhtml=str;' }" N$ Y  J! u. i4 {9 o  l$ h* o
}
4 L. I3 t: D+ G( Y- G// played& O8 v6 F4 x/ y
function updateplayed(){
0 r) s1 F; s1 U  E. Hvar ranges=audio.played;
' r: j4 v. H  K+ Z) }var str=;( T$ s4 q. U! {8 s  c2 B
var n=ranges.length;
1 w4 U/ |, u4 |for(var i=0;i<n;i++){
6 o% T+ T! d# n3 Mstr+=(+ranges.start(i)+,+ranges.end(i)+);! h1 t3 n. j! i5 U9 S
if(i!=n-1){" D  H+ ~2 x) b% ?* j+ Q7 [3 k
str+=% H3 ]+ T" A% z
;7 t# w5 I0 Q5 X$ N! j, o5 |
}
" E9 y! |2 l# Q4 ?}. c) A0 N7 |7 p1 i( f
document.getelementbyid(played).innerhtml=str;
# K' G) y* R  `( {7 w  R. Z}* K! X- R. ^( a7 S. f6 V0 R
// error
; i4 @. N3 Q8 O% O# P& Pfunction updateerror(){
# ^3 b3 ^% f$ Mdocument.getelementbyid(error).innerhtml=audio.error;0 D+ `  T6 Y) |, t
}
; y6 d$ h$ f; l$ D  P
- M2 {8 P  ]! C1 P更多网页制作信息请查看: 网页制作
作者: gevaemaidovef    时间: 2015-11-4 20:27
命不能争,运可以造,弱者认命,强者抗命,能者求命,智者造命。
作者: seazvyt    时间: 2015-11-4 20:27
哎 怎么说那~~
作者: alapScady    时间: 2015-11-4 20:28
来电来函..欢迎洽购...
作者: gevaemaidovef    时间: 2015-11-4 20:28
疯了.........
作者: effoggikeftor    时间: 2016-2-28 22:44
说嘛1~~~想说什么就说什么嘛~~
作者: wwzcdenleclv    时间: 2016-2-28 22:45
真的 好久都没有这么笑了~ 好开心哦
作者: gevaemaidovef    时间: 2016-2-28 22:45
今天统计好像出了问题
作者: GoodyFouppy    时间: 2016-2-28 22:45
因删贴不及时所产生的任何法律(书法,基本法,劳动法,婚姻法,输入法,国际法,今日说法,与台湾关系法及文中涉及或可能涉及以及未及之法,各地治安管理条例)纠纷或责任本人概不负责。




欢迎光临 得知互动 (https://bbs.dezhifl.com/) Powered by Discuz! X5.0