欢迎光临散文网 会员登陆 & 注册

制作一个小滑块的艰苦历程

2020-12-08 22:29 作者:帆雨动画  | 我要投稿


需要在网页上用几个滑块

出于某些原因,需要在网页上用几个滑块。

其实,这是很简单的一件事情,只需敲一行html代码就可以了:

<input type="range" name="points" min="1" max="10">

耗时不超过一分钟,非常容易的一件事情。

不过这样不仅不美观,而且让人感觉很低端:


html的滑块

怎么办呢?其实也很简单,因为已经有人做好了,而且不仅做了滑块,交互页面上可能需要用到的东西都做好了,我们拿过来用即可。这一套东西就叫前端 UI 框架。

有一个框架叫layui,简单易用,花点时间阅读一下说明文档就可以了。做出来的滑块比默认的好看了。

layui的滑块

但是很不幸的,做出来的滑块在PC端正常,但在手机端不能滑动,这是什么原因呢?

于是我开始排查起来:

会不会是手机浏览器兼容性问题呢?

会不会是我引用layui时出了什么问题呢?

会不会是我写的代码有问题呢?

会不会是浏览器缓存的问题呢?

按部就班地查了一遍,都没有问题。那么,问题十有八九在layui自身上了。很快,我的猜疑得到了印证:

github上的issue

糟糕透了!虽然我找到了问题所在,但几个小时时间也过去了。

layui不行了,那就换一个吧。有一个很热门的叫Element,据说是饿了吗团队开发的,我就选它了。

于是开始登录它的官网,在手机上测试了一下,确定能用之后就开始阅读文档,动手试着做了几个小例子,还挺好用。



正当我准备开始用Element在我的页面上添加滑块的时候,眼角的余光瞥见了浏览器上推送过来的几个字“Element停止维护”。

“有这事?”一边想着,一边搜了一下,还真是,停止维护了。

停止维护!虽然这对于我用Element做个滑块没有任何影响,滑块也依然能用,但我自身的执拗阻止了我继续使用Element。代价,就是差不多一个小时时间又废掉了。

接下来怎么办呢?要么再找一个框架,要么直接找一个单独的滑块组件来用。

找了几个单独的滑块组件,有的只支持低版本的jquery,有的有一些bug,都不尽如人意。

再找个框架嘛,又有诸多顾虑。比如这框架会不会又停止维护?

犹豫中,询问了一个做前端的小伙伴,扯了一会,快一个小时时间又过去了。

后来,我也懒得瞻前顾后了,直接用jquery-ui吧。


jquery-ui

这是最后的样子,不好看,但也顾不了这么多了。

原本小小的一个问题,被我搞得这么复杂,这里边暴露了一些问题,其中就包括我的执拗。

如果有产品经理问我,加几个滑块需要多长时间?

我回答:“二十分钟吧!”

然后,我发现我掉入了一个深坑里。

再然后呢?

加班吧,兄弟!

后续:

后来还是有问题,于是干脆就用文章开头的原始方式:

<input type="range" name="points" min="1" max="10">

再修改修改样式,凑合能用就行了。

制作一个小滑块的艰苦历程的评论 (共 条)

分享到微博请遵守国家法律