萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> jQuery實現文本展開收縮特效

jQuery實現文本展開收縮特效

   在網頁上只有一個小區域,但是說明性的文字又很長,下面這段腳本實現的是長文字的部分顯示。

  當用戶點擊展開時,文字展開,收縮時文字收縮。

  本來用jQuery自帶的toggle()就可以寫,但是我做的時候 toggle一直不work,所以就用了click + 標志位來做的

  ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 <script language="javascript" src="jquery.js"></script> <script language="javascript"> var cur_status = "less"; $.extend({ show_more_init:function(){ //alert("show_more_init!"); var charNumbers=$(".content").html().length;//總字數 var limit=100;//顯示字數 if(charNumbers>limit) { var orgText=$(".content").html();//原始文本 var orgHeight=$(".content").height();//原始高度 var showText=orgText.substring(0,limit);//最終顯示的文本 $(".content").html(showText); var contentHeight=$(".content").height();//截取內容後的高度 $(".switch").click( function() { if(cur_status == "less"){ $(".content").height(contentHeight).html(orgText).animate({ height:orgHeight}, { duration: "slow" }); $(this).html("收縮"); cur_status = "more"; }else{ $(".content").height(orgHeight).html(showText).animate({ height:contentHeight}, { duration: "fast" }); $(this).html("展開"); cur_status = "less"; } } ); } else { $(".switch").hide(); } } }); $(document).ready(function(){ $.show_more_init(); }); </script> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>test</title> <style> #limittext{ width:640px; height:auto; position:relative; background-color:#ccc; color:black; } .switch{ font-size:12px; text-align:center; cursor:pointer; font-family:Verdana; font-weight:800; position:absolute; bottom:0; width:100%; /*background:url(more-bg.png) repeat-x bottom;*/ height:40px; line-height:80px; } </style> </head> <body> <div id="limittext" > <div class="content" style="padding-bottom:15px;"> 這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字,這是很長的一段文字 </div> <div class="switch">展開</div> </div> </body> </html>

  方法二:

  ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>jQuery實現DIV層的收縮展開效果</title> <script type="text/javascript" src=
copyright © 萬盛學電腦網 all rights reserved