造轮子遇到的的技术难题

image.png

table 做固定表头的技术难题

  1. 尝试用css解决,overflow: auto会使整个table滚动,考虑加在tbody上,这就需要知道tbody的height的高度,因此采用js的方法,组件传属性值得知tbody的高度,然后在tbody上加高度设置overflow让其滚动,但发现不会生效,因此改用另一种思路
  2. 拿出thead,滚动时header始终悬浮在最上面,因此可采用复制table,然后将其theader用绝对定位固定在原有table的thead的位置,复制的tbody的元素则删除掉
  3. 可以固定表头但发现列不对齐,因此获取原有table的head的每列的高度依次赋值给复制的table的每个th,即可使得复制的theader与原有的列对齐
  4. 又发现事件不响应了,因为是深拷贝,点击thead上的元素已经不是原来的thead上的了,所以用浅拷贝thead,然后直接往复制的table里面appendChild原有的thead
  5. 事件可以正常响应但是会发现thead覆盖了第一列,因此设置marginTop,设置在原有的div上不然和用户设置的高度不一样,滚动条问题可以通过用户传宽度或者自制滚动条解决或者设置一个div没有滚动条的,获取其宽度,然后再让其拥有滚动条,在获取宽度,取差值

测试input上传文件的技术难题

  1. input.files[0] = 'xxx.file', 提示得用filelist
  2. google 搜索 js set file for input file
  3. 发现2017年12月前的浏览器不支持,之后支持,stackoverflow 给出了答案


    image.png

sticky

image.png
image.png

使用lib打包

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 9,927评论 0 0
  • HTML标签解释大全 一、HTML标记 标签:!DOCTYPE 说明:指定了 HTML 文档遵循的文档类型定义(D...
    米塔塔阅读 8,706评论 1 41
  • 基本内容: html超文本标记语言。 页面组成: html>//版本声明 //万国码——gb1312解决中文乱码 ...
    Spencerhyuk阅读 5,164评论 0 1
  • HTML:超文本标记语言; 1.什么是HTML标记语言:表示网页信息的符号标记语言 特点: 可以设置文本的格式; ...
    special_wen阅读 2,939评论 0 2
  • HTML基本骨架 单表签 img input br hr link meta 剩下的基本都是双标签 文字类的...
    前端小白i阅读 1,846评论 0 0

友情链接更多精彩内容