亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > JavaScript > 正文

jQuery制作可自定義大小的拼圖游戲

2024-05-06 16:17:51
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了jQuery制作可自定義大小的拼圖游戲的代碼,非常的簡單實用,雖然還只是局限于數字順序的拼圖,后續慢慢完善上圖片,但還是分享給大家,有需要的小伙伴可以參考下。

我把大小限制在了3-10之間,實在閑的,或者有自虐傾向的可以試試改下。。

本來準備弄圖片上去的,還沒弄..

pintu.html

 

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
  2. <html xmlns="http://www.w3.org/1999/xhtml"
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  5. <title>拼圖</title> 
  6. <style type="text/css"
  7. #pt_main{ 
  8. margin:0 auto; 
  9. border:2px solid #000;} 
  10. #menu{ 
  11. text-align:center;} 
  12. #pt_main div{ 
  13. padding:0px; 
  14. margin:0px; 
  15. float:left; 
  16. line-height:200px; 
  17. font-size:100px; 
  18. text-align:center;} 
  19. #pt_main div:hover{ 
  20. cursor:pointer;} 
  21. .hui{ 
  22. background:#CCC;} 
  23. </style> 
  24.  
  25. <script src="http://code.jquery.com/jquery-latest.js"></script> 
  26. <script type="text/javascript"
  27. //div邊框寬度 
  28. var border_w=2; 
  29. //div大小 
  30. var size=50; 
  31. //是否過關 
  32. var st=false
  33. //背景圖片地址(功能還沒寫) 
  34. var imgurl=''
  35. //灰色塊的位置 
  36. var hui=0; 
  37. //游戲寬高 
  38. var width=3; 
  39. var height=3; 
  40. $(function(){ 
  41. init(); 
  42. }); 
  43. //判斷兩個數字能不能交換 
  44. function ut_jh(a,b){ 
  45. if(Math.abs(a-b)==width){ 
  46. return true
  47. if(Math.abs(a-b)==1&& ut_line(a,b,width) ){ 
  48. return true
  49. return false
  50. //判斷兩個數字是否在同一行 
  51. function ut_line(a,b,width){ 
  52. if(parseInt(a/width)==parseInt(b/width)){ 
  53. return true
  54. }else
  55. return false;  
  56. //生成可交換的集合(可與灰色塊交換的集合) 
  57. function ut_sc(a){ 
  58. //最多為4個 
  59. var li=new Array(); 
  60. var i=0; 
  61. if(a-width>=0){ 
  62. li[i++]=a-width; 
  63. if(a+width<=width*height-1){ 
  64. li[i++]=a+width;  
  65. if(ut_line(a,a-1,width) && a-1>=0){ 
  66. li[i++]=a-1;  
  67. if(ut_line(a,a+1,width) && a+1<=width*height-1){ 
  68. li[i++]=a+1;  
  69. //alert(a+'-length:'+li.length) 
  70. return li; 
  71. //塊的點擊事件 
  72. function pt_click(){ 
  73. if(!st){ 
  74. return false
  75. //點擊塊的索引 
  76. var index=get().index($(this)); 
  77.  
  78. if(ut_jh(hui,index)){ 
  79. jh(hui,index); 
  80.  
  81. //判斷是否過關 
  82. pd(); 
  83.  
  84.  
  85. //兩塊交換 
  86. function jh(hui_,index_){ 
  87. //alert(hui+1+","+(index_+1)); 
  88. var list=get();//所有塊 
  89. var h=list.eq(hui_);//灰色塊 
  90. var d=list.eq(index_);//點擊的塊 
  91.  
  92. //交換樣式 
  93. h.removeClass(); 
  94. d.addClass('hui'); 
  95. h.html(d.html()); 
  96. d.html(''); 
  97. hui=index_; 
  98.  
  99. //交換各自屬性 
  100. tg=h.attr('tg'); 
  101. h.attr('tg',d.attr('tg')); 
  102. d.attr('tg',tg); 
  103.  
  104. function init(){ 
  105. //不能太小... 
  106. if(width<3||height<3){ 
  107. return false;  
  108. hui=width*height-1; 
  109. var pp=$("#pt_main"); 
  110. pp.html(''); 
  111. //創建并初始化 
  112. var k=width*size+border_w*width*2; 
  113. var g=height*size+border_w*height*2; 
  114. pp.css({'width':k,'height':g}); 
  115. for(i=0;i<width*height;i++){ 
  116. var n=$("<div>"+(i+1)+"</div>");  
  117. n.css({'width':size, 
  118. 'height':size, 
  119. border:border_w+'px solid #000'
  120. lineHeight:size+'px'
  121. fontSize:parseInt(size/3)+'px' 
  122. }); 
  123. if(imgurl!=''){ 
  124.  
  125. pp.append(n); 
  126. //alert(i) 
  127.  
  128. get().last().html(''); 
  129. get().last().addClass('hui'); 
  130. get().on('click',pt_click); 
  131.  
  132. //為每個塊附加屬性,記錄當前的值 
  133. $("#pt_main div").each(function(index, element) { 
  134. $(element).attr('tg',index); 
  135. }); 
  136.  
  137.  
  138. dl(); 
  139. st=true
  140. //判斷是否通過(當每個塊的值與自身的下標對應) 
  141. function pd(){ 
  142. var b=true
  143. get().each(function(index, element) { 
  144. if($(element).attr('tg')!=index){ 
  145. b=false
  146. return false
  147.  
  148. }); 
  149. if(b){ 
  150. st=false
  151. alert("恭喜過關!"); 
  152. return true
  153. }else
  154. return false
  155. //獲取集合 
  156. function get(){ 
  157. return $("#pt_main div"); 
  158. //打亂 
  159. function dl(){ 
  160. //打亂次數 
  161. var count=width*width*width; 
  162.  
  163. for(i =0;i<count;i++){ 
  164. //可交換集合 
  165. var li=ut_sc(hui); 
  166. var num=parseInt((li.length)*Math.random()); 
  167. jh(hui,li[num]); 
  168.  
  169. //初始化按鈕的點擊事件 
  170. function csh(){ 
  171. var dxv=$('#dx').val(); 
  172. if(!parseInt(dxv)){ 
  173. alert('請輸入3-10之間的數字'); 
  174. $('#dx').val(''); 
  175. return false
  176. var v=parseInt(dxv); 
  177. if(v<3||v>10){ 
  178. alert('請輸入3-10之間的數字'); 
  179. $('#dx').val(''); 
  180. return false
  181. width=v; 
  182. height=v; 
  183. init(); 
  184. </script> 
  185. </head> 
  186.  
  187. <body> 
  188. <div id='menu'
  189. 大小:<input id='dx' style="text-align:center;width:40px;"/> 
  190. <button onclick="csh()">初始化</button> 
  191. <button onclick="init()">刷新</button> 
  192. </div> 
  193. <div id="pt_main"
  194.  
  195. </div> 
  196.  
  197. </body> 
  198. </html> 

以上就是本文給大家分享的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久亚洲精品成人| 国产精品视频网站| 一本色道久久88综合日韩精品| 久久久久久久一区二区三区| 欧美国产日本在线| 久久精品小视频| 久久久久久久久久久久av| 亚洲国产精品专区久久| 92裸体在线视频网站| 成人精品视频久久久久| 欧美成人免费网| 色av中文字幕一区| 成人写真视频福利网| 91精品国产自产在线老师啪| 欧美极品欧美精品欧美视频| 国产在线高清精品| 国产亚洲欧洲高清一区| 国产精品视频区1| 久久久久久久久久久av| 国产欧美在线视频| 日韩精品有码在线观看| 欧美日韩成人网| 国模视频一区二区三区| 麻豆精品精华液| 日韩av电影在线网| 国产精品老女人视频| 久久亚洲精品一区| 欧美大片免费观看| 亚洲第一天堂av| 久久久精品视频成人| 成人激情在线播放| 欧美精品video| 国产偷国产偷亚洲清高网站| 国产欧美在线看| 欧美综合激情网| 亚洲第一天堂无码专区| 97婷婷大伊香蕉精品视频| 欧美日韩国产91| 成人黄色av播放免费| 亚洲欧美日韩成人| 97在线看免费观看视频在线观看| 色噜噜亚洲精品中文字幕| 亚洲r级在线观看| 精品五月天久久| 国产成人精品视频在线观看| 欧美电影在线免费观看网站| 欧美猛交ⅹxxx乱大交视频| 国产综合在线视频| 欧美激情视频播放| 国产精品视频免费观看www| 成人写真福利网| 欧美日韩在线一区| 国产v综合v亚洲欧美久久| 日韩经典中文字幕在线观看| 亚洲深夜福利网站| 庆余年2免费日韩剧观看大牛| www.日韩系列| 成人国产精品久久久久久亚洲| 日韩av网站大全| 久久精品国产清自在天天线| 欧美成人国产va精品日本一级| 51久久精品夜色国产麻豆| 欧美日韩国产精品一区二区三区四区| 91精品国产高清久久久久久久久| 日韩欧美福利视频| 日韩欧美精品免费在线| 国产噜噜噜噜噜久久久久久久久| 国产91精品最新在线播放| 最近2019中文字幕大全第二页| 欧美亚洲成人免费| 777午夜精品福利在线观看| 精品久久久久久久中文字幕| 欧美精品一本久久男人的天堂| 欧美大片网站在线观看| 久久久亚洲影院你懂的| 国产成人综合久久| 亚洲欧美激情视频| 久久精品福利视频| 欧美精品18videos性欧美| 精品国内产的精品视频在线观看| 日韩av免费一区| 欧美日韩在线影院| 91av在线精品| 伊人久久大香线蕉av一区二区| 91在线色戒在线| 日韩在线免费视频观看| 国产精品久久久久久久久久久新郎| 亚洲aa中文字幕| 亚洲人成网站777色婷婷| 亚洲成人动漫在线播放| 中文字幕在线日韩| 日韩专区中文字幕| 欧美日韩国产页| 日韩av一区二区在线观看| 欧美影院成年免费版| 国产亚洲a∨片在线观看| 精品国产福利视频| 91高清免费视频| 日韩在线观看网址| 亚洲福利在线观看| 91免费看视频.| 精品国产一区二区三区在线观看| www日韩中文字幕在线看| 日韩电影大全免费观看2023年上| 国内精品久久久久影院优| 久久全国免费视频| 欧美午夜丰满在线18影院| 91精品免费久久久久久久久| 中文字幕亚洲综合久久筱田步美| 精品久久久久国产| 成人xvideos免费视频| 伊人一区二区三区久久精品| 日韩精品中文字幕在线播放| 亚洲大胆人体在线| 亚洲激情在线观看视频免费| 欧美日韩电影在线观看| 国产99视频在线观看| 欧美日韩爱爱视频| 国产精品三级网站| 中文字幕久精品免费视频| 亚洲电影在线看| 国产亚洲成av人片在线观看桃| 亚洲韩国日本中文字幕| 日韩精品在线视频美女| 日韩成人在线视频观看| 日韩久久午夜影院| 中文字幕精品www乱入免费视频| 国语自产偷拍精品视频偷| 在线精品视频视频中文字幕| 97香蕉超级碰碰久久免费软件| 亚洲成人av中文字幕| 亚洲第一国产精品| 成人97在线观看视频| 欧美高清第一页| 欧美性xxxxxxxxx| 亚洲精品国产电影| 国产一区二区三区在线播放免费观看| 午夜精品一区二区三区av| 久久久伊人日本| 日本伊人精品一区二区三区介绍| 国产精品成人久久久久| 国产成人在线精品| 国产成人亚洲综合青青| 久久香蕉频线观| 中文字幕国产精品久久| 少妇av一区二区三区| 国外日韩电影在线观看| 国产精品爽黄69| 国产精品久久久久久久久久| 国产亚洲欧美日韩精品| 国产精品国产亚洲伊人久久| 国产精品精品久久久久久| 国产日韩欧美在线观看| 伊人男人综合视频网| 91在线免费看网站| 国产精品免费看久久久香蕉| 欧美性生活大片免费观看网址| 亚洲精品国产精品国自产观看浪潮| 日韩a**站在线观看| 亚洲天堂成人在线视频| 国产福利成人在线| 夜夜嗨av一区二区三区四区| 亚洲精品成人久久电影| 国产婷婷97碰碰久久人人蜜臀|