凉凉
选择题除了前端的还考了操作系统,Linux,然后canvas这一块我不熟悉只能蒙,还有构造函数原型这一块各种嵌套然后考变量的值是多少
算法题三道,
第一道,给定一组数,分别找出另一组数中比其大的数的个数,超时,AC50%
第二道,给定一组数和概率p,求最大的数学期望,不会
第三道,实现上下左右控制表格中的有色单元格视觉上移动的效果,DOM不熟,凉凉
结束之后把第三题做了一下,就是API不熟悉,然后当时心态不好,很慌
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <style> table.game { font-size: 14px; border-collapse: collapse; width: 100%; table-layout: fixed; } table.game td { border: 1px solid #e1e1e1; padding: 0; height: 30px; text-align: center; } table.game td.current{ background: #1890ff; } </style> <div id="jsContainer"> <table class="game"> <tbody> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td class="current"></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> <tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr> </tbody> </table> </div> <script> function bind() { document.onkeydown = event => { if (!event) return; var code = event.keyCode || ''; if (!{'37': 1, '38': 1, '39': 1, '40': 1}[code]) return; event.preventDefault && event.preventDefault(); //TODO: 请实现按键控制 let box = document.getElementsByClassName("current")[0]; let parent = box.parentNode; let index = box.cellIndex; let len = parent.childNodes.length; let rowIndex = parent.rowIndex; // let grand = document.getElementsByTagName('tbody')[0]; let grandLen = grand.childElementCount; switch (code){ case 37: { if(index === 0){ parent.childNodes[len - 1].classList.add("current"); }else{ parent.childNodes[index-1].classList.add("current"); } box.classList.remove("current"); break; } case 39: { if(index === len-1){ parent.childNodes[0].classList.add("current"); }else{ parent.childNodes[index+1].classList.add("current"); } box.classList.remove("current"); break; } case 38: { if(rowIndex === 0){ grand.children[grandLen-1].childNodes[index].classList.add("current"); }else{ grand.children[rowIndex-1].childNodes[index].classList.add("current"); } box.classList.remove("current"); break; } case 40: { if(rowIndex === grandLen-1){ grand.children[0].childNodes[index].classList.add("current"); }else{ grand.children[rowIndex+1].childNodes[index].classList.add("current"); } box.classList.remove("current"); break; } } }; } bind(); </script> </body> </html>
---第一次发帖--------------------------------------
全部评论
(0) 回帖