我想要改成动态的,现在效果做好了,就是动态创建数组那里卡主了,希望大神帮忙解答。
<style> ul { overflow:hidden; } li { width:50px; height:20px; text-align:center; line-height:20px; list-style:none; border:1px solid #dedede; float:left; } </style>
<input type="text" class="js-text" value="" /> <input type="button" class="js-btn" value="确定"/> <div class="list js-list"> <ul></ul> </div>
<script> $(function(){ var btn = $('.js-btn'); var ul = $('.js-list ul'); var li = $('.js-list ul li'); var text = parseInt($('.js-text').val()); var arr = new Array(); arr[0] = new Array(); arr[1] = new Array(); arr[2] = new Array(); arr[3] = new Array(); arr[4] = new Array(); btn.on('click',function(){ var text = parseInt($('.js-text').val()); var arr = cal(5); var stas = ""; for(var i=0; i<arr.length; i++){ for(var j=0; j<arr.length; j++){ stas += arr[i][j]; } stas +='<br /><br />'; } ul.html(stas); }); var cal = function(len){ var min = 0; var max = len - 1; var row = 0; var col = 0; for(var i=0; i<len*len; i++){ arr[row][col]='<li>'+(i+1)+'</li>'; if(row == min && col < max){ col = col + 1; }else if(row < max && col == max ){ row = row +1; }else if(row == max && col > min ){ col = col - 1; }else if(row > min && col == min){ row = row - 1; } if(row - 1 == min && col == min ){ min = min + 1; max = max - 1; } } return arr; } }) </script>
蜂之谷
相关分类