BUG汇总

作者: hellomyshadow | 来源:发表于2019-08-23 15:25 被阅读0次
  1. echartsdiv 默认 display:none,改为 display:block 时,echarts 无法识别 div 的宽高,只显示 100px,如果直接重新绘制 resize(),会发现图表从小到大的过程,体验性不好!
this.$nextTick(() => {  //等待浏览器下一次轮询,此时 div 已经 none --> block
    let container = document.getElementById(containerId);
    let myChart = echarts.init(container, "light");
    myChart.clear();  //清空画布,防止重新绘制时出现从小到大的过程
    myChart.resize();  //重新绘制,让echarts识别 div 新的宽高
    myChart.setOption(option, config);  //开始渲染
});
  1. 控制滚动条平滑滚动
// 1. 滚动条在哪个元素上,就获取哪个元素的DOM元素
const dom = document.body;
// 2. 滚动到顶部
dom.scrollTo({
    top: 0, 
    behavior: "smooth"
})
// 3. 获取可滚动的总高度
let scrollHeight = dom.scrollHeight;
// 4. 滚动到底部
dom.scrollTo({
    top: scrollHeight, 
    behavior: "smooth"
})
// 5. 对于Vue,如果DOM高度是变化的,需要放在 this.$nextTick 中,等待下次轮询
  1. target="_blank" 的安全性与性能
    <a target="_blank"> 可以打开一个新窗口,在新窗口的页面能通过 window.opener 获取到来源页面window对象,即使跨域了也一样!某些属性的访问被拦截,是因为跨域安全策略的限制。
    • 新窗口中通过修改 window.opener.location 的值,神不知鬼不觉地把源窗口的地址篡改了,比如伪装成登录页,让用户以为登陆失效了,盗取用户的账号密码。
    • 性能问题 target="_blank"打开的新窗口跟原来的页面窗口共用一个进程。如果新窗口页面执行了性能不好的JS代码,占用大量系统资源,那么原来的窗口页面也会受到影响。
    • 解决方案:如果一定要用target="_blank",需要加上属性 rel="noopener"rel="noreferrer"。这样新窗口的window.opener = null,而且会让新窗口运行在独立的进程中,不会拖累源窗口的进程(有些浏览器做了性能优化,新开窗口默认就在独立进程打开)
      <a target="_blank" rel="noopener noreferrer">打开</a>
      
    • 对于JS打开的新窗口,则手动设置为null
      var newWindow = window.open();  // 受浏览器限制,无法频繁打开新窗口
      newWindow.opener = null;
      newWindow.location = "https://weibo.com/";
      newWindow.target = "_blank";
      

相关文章

  • bug汇总

    1111

  • bug汇总

    Hide status bar 如果旋转隐藏statasBar 那么在程序启动的开始 获取到的statubar高度...

  • BUG汇总

    echarts:div 默认 display:none,改为 display:block 时,echarts 无法...

  • Bug汇总

    autoResize 1 .只支持横线的felx布局,纵向的不行.2 .需要加个这个操作.container-in...

  • ios 10.3

    Xcode8 及iOS10适配问题汇总 上点干货,目前得知的一些bug解决汇总: iOS10相册相机闪退bug h...

  • Eat-Vue:日常记录1

    日常记录Vue中遇见的Bug和一些用法汇总:BUG:1、[Vue warn]: You are using the...

  • BUG汇总记录

    1、Could not successfully update network info during initi...

  • BUG汇总 1

    1.Unsupported Modules Detected: Compilation is not suppor...

  • 前端bug汇总

    div整体ahove不变色原因 设置div的背景色不变色是因为设置高度太小导致.应该去除height属性设置.

  • flutter bug汇总

    1:卡启动页的另外一个情况就是版本运行出错,用xcode运行真机会报错,卡启动页 具体情况如下 解决办法是http...

网友评论

      本文标题:BUG汇总

      本文链接:https://www.haomeiwen.com/subject/iyktectx.html