changXY
changXY
<!DOCTYPE html>
<html> <head>
<link rel="shortcut icon" href="./assets/favicon.ico" />
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<title>changeXY</title>
</head>
<style>
*{
padding: 0;
margin: 0;
}
#ul li{
list-style: none;
width: 50px;
height: 50px;
text-align: center;
line-height: 50px;
border-right: none;
background: papayawhip;
border: 1px solid #000;
}
#ul{
margin: 200px auto;
display: flex;
flex-wrap: wrap;
overflow: hidden;
position: relative;
}
.button{
position: absolute;
top: 14%;
right: 21%;
background-color: aquamarine;
} </style>
<body>
<ul id="ul"></ul>
<button class='button' onclick="ChangeVlaue()">changeXY</button>
</body>
<script>
let arr=[];
let size=6;
let sizeGrid=50
let len =size*size;
let ul = document.getElementById('ul')
let OLi =ul.getElementsByTagName('li')
ul.style.width = size*(sizeGrid + 2)+'px' ;
for( let i=0 ;i <len;i++){
let Oli = document.createElement('li')
Oli.style.width = sizeGrid +'px';
Oli.style.height = sizeGrid +'px';
Oli.innerHTML =i;
arr.push(i);
ul.appendChild(Oli)
}
function ChangeVlaue(){
arr = changeXY(arr,size)
for( let i =0;i<arr.length;i++){
// console.log("arr[i]-------",arr[i])
// console.log("OLi[i]--",OLi[i])
OLi[i].innerHTML = arr[i];
}
}
function changeXY(arr,size){
let NewArr=[];
let j =0;
(function(){
if(size == j){
return;
}
for( let i=0 ;i<arr.length;i++){
if( i%size == j){
NewArr.push(arr[i])
}
}
j++;
arguments.callee() /* 匿名函数自调用*/
})();
return NewArr;
} </script>
</html>


changXY的更多相关文章
随机推荐
- 手把手详解持续集成之GitLab CI/CD
一.环境准备 首先需要有一台 GitLab 服务器,然后需要有个项目:这里示例项目以 Spring Boot 项目为例,然后最好有一台专门用来 Build 的机器,实际生产中如果 Build 任务不频 ...
- 漫画:一招学会TCP的三次握手和四次挥手
TCP三次握手和四次挥手的问题在面试中是最为常见的考点之一.很多读者都知道三次和四次,但是如果问深入一点,他们往往都无法作出准确回答. 本篇尝试使用动画来对这个知识点进行讲解,期望读者们可以更加简单地 ...
- c程序内存模型
这篇文章主要记录一下c程序运行时内存空间如何使用.(摘抄自网络) 在一个多任务操作系统中的每个进程都运行在它自己的内存“沙箱”中.这个沙箱是一个虚拟地址空间(virtual address space ...
- C++—模板(1)模板与函数模板
1.引入 如何编写一个通用加法函数?第一个方法是使用函数重载, 针对每个所需相同行为的不同类型重新实现这个函数.C++的这种编程机制给编程者极大的方便,不需要为功能相似.参数不同的函数选用不同的函数名 ...
- scrapy爬取数据保存csv、mysql、mongodb、json
目录 前言 Items Pipelines 前言 用Scrapy进行数据的保存进行一个常用的方法进行解析 Items item 是我们保存数据的容器,其类似于 python 中的字典.使用 item ...
- Centos设置防火墙与开放访问端口
一. jeuxs在启动后可能会出现启动jexus成功,但是访问失败.但是在服务器内部访问没问题. 列出所有端口 netstat -ntlp 查看已经开放的端口: firewall-cmd --list ...
- 【Linux】在Win10上搭建WSL(适用于Linux的Windows子系统)
1.打开WSL ,控制面板 -- 程序 -- 程序和功能 -- 打开或关闭Windows功能 - 选中[适用于Linux的Windows子系统] 2.开启后重启电脑 3.在Win10自带的Micro ...
- Go之十大经典排序算法
1.冒泡排序 func bubble_sort(li []int) { for i := 0; i < len(li)-1; i++ { exchange := false for j := 0 ...
- hbase读的性能优化
任何系统都会有各种各样的问题,有些是系统本身设计问题,有些却是使用姿势问题.HBase也一样,在真实生产线上大家或多或少都会遇到很多问题,有些是HBase还需要完善的,有些是我们确实对它了解太少.总结 ...
- *CTF——shellcode
一看题目是利用shellcode解决问题 伪代码: checksec:开启了NX exp: from pwn import* context(os='linux',arch='amd64',log ...