实力榜单背后的故事,带你了解更多内幕!

tmyb

搞了个实力榜,从零开始的那种!

最近闲着没事,就想着能不能自己也整个实力榜玩玩,看看能不能把身边朋友或者感兴趣的东西排个名啥的,纯属自娱自乐。说干就干,先定了个简单的目标:做一个能手动输入名字和对应数值,然后自动排序的网页。

第一步,搭架子!

实力榜单背后的故事,带你了解更多内幕!

我是前端小白,就直接上了最简单的HTML+CSS+JavaScript。HTML负责页面结构,CSS负责美化(虽然也没美化成啥样),JavaScript负责核心的排序逻辑和数据处理。

先用HTML建了个表单,里面放了两个输入框,一个用来输名字,一个用来输数值。还加了个“添加”按钮,点了就能把输入的内容添加到列表里。

第二步,让数据动起来!

用JavaScript监听“添加”按钮的点击事件,获取输入框里的值,然后动态地创建一个新的列表项(`

  • `),把名字和数值放进去。再把这个列表项添加到一个无序列表(`
      `)里。

      这里有个小坑,刚开始我直接用的`innerHTML`,结果每次添加新的列表项,之前的都会被清空。后来查了下资料,改成了`appendChild`,问题解决!

      第三步,排序是灵魂!

      实力榜单背后的故事,带你了解更多内幕!

      这才是实力榜的核心!我用JavaScript写了一个排序函数,这个函数接受一个包含名字和数值的对象数组,然后根据数值大小进行降序排序。排序算法我直接用了数组的`sort()`方法,配合一个自定义的比较函数。

      每次添加新的列表项之后,就调用这个排序函数,重新渲染列表。这样就能保证列表始终按照数值大小排列。

      第四步,美化一下?算了,能用就行!

      本来想用CSS好好美化一下页面的,但发现自己审美实在不行,搞了半天还是丑,就放弃了。随便改了改字体和颜色,让它看起来不那么刺眼就行了。

      最终成果!

      虽然界面简陋,但功能基本实现了。可以添加名字和数值,自动排序,也能删除列表项。 感觉还挺有成就感的!

      实力榜单背后的故事,带你了解更多内幕!

      • 从零开始做东西还是挺有意思的,遇到问题解决问题的过程也很有挑战。
      • 前端水太深,CSS太难了!
      • 下次可以尝试用更高级的框架,比如React或者Vue,可能会更方便。

      实力榜单背后的故事,带你了解更多内幕!

      这回实践虽然简单,但也让我对前端开发有了一点初步的了解。以后继续努力!