最赞回答 / l1uyub0b0b0
不一定优先级高,是执行顺序的问题。这个demo里js是使用document.ready,也就是在页面加载完以后才执行的。页面加载也包括了css的加载,所以之后使用js修改css属性会覆盖本身设定的css。
使用js设定这些属性是因为在程序中这些属性要动态改变。也可以使用css布置初始属性,但是为了统一,也为了方便,我统一使用js设置这些属性。
2014-07-19
最赞回答 / 慕少1187603
加油,你得耐心,多思考,要慢,因为只有慢功夫才是真功夫。(我用的VS Code,也跟你一样,而且我已经比对完代码了,最后只能一个单词一个单词的比对,最后发现都是单词拼错的锅。)
2014-07-17
最赞回答 / l1uyub0b0b0
canMoveLeft是对当前board整体给出一个判断,是否需要具体的作移动操作。在moveLeft中,是针对每一个格子是否需要移动作判断。
moveLeft不判断board[i][j]是否为0,是效率考虑。否则相当于每次16个格子都要移动,不优。
其实moveLeft很研究,canMoveLeft确实可以不判断。但是最初设计接口moveLeft返回bool,所以就加了这段逻辑。
确实有优化空间!谢谢提醒!
2014-07-17