我的屏幕上有四个画布,上面有两个,下面有两个.

每个人都有一个按钮,可以最大化画布,隐藏其他画布.

此按钮位于每个画布上方,绝对位置基于画布的offsetTop和offsetLeft.

但是,当我最大化或最小化画布时,按钮公式仅更新width属性.

奇怪的是,如果我调整屏幕大小,也调用调整大小功能,一切都会到达正确的位置.

编辑:附加信息:我正在使用VueJS,为了隐藏其他画布,我将v-show =“false”应用于它们的父div,它只应用display:none.

一些片段:

初始调整大小和监听器:

window.onload = function () {

resizeAll();

window.addEventListener('resize', resizeAll, false);

};

调整大小的中心:

function resizeAll () {

vue.$refs.panelOne.resizeDefault();

// ...

vue.$refs.panelN.resizeDefault();

}

面板调整大小默认和调整大小的方法. “expandStyles”是应用于按钮的css样式:

resizeDefault() {

let dimensions;

if (this.expanded) {

dimensions = getScreenDimensions();

} else {

dimensions = getHalfScreenDimensions();

}

this.resize(dimensions.width, dimensions.height);

}

resize (width, height) {

this.canvas.width = width;

this.canvas.height = height;

this.expandStyles.top = (this.canvas.offsetTop + 10) + 'px';

this.expandStyles.left = (this.canvas.offsetLeft + this.canvas.width - 40) + 'px';

drawInterface.redraw();

}

最后,尺寸吸气剂:

function getScreenDimensions () {

return {

width: window.innerWidth - 310,

height: window.innerHeight * 0.92

};

}

function getHalfScreenDimensions () {

return {

width: (window.innerWidth - 310) / 2,

height: (window.innerHeight * 0.92) / 2

};

}

html更改offset,javascript – HTML offsetLeft延迟更改相关推荐

  1. html更改offset,div的offsetLeft与style.left区别

    clientX 事件属性返回当事件被触发时鼠标指针向对于浏览器页面(或客户区)的水平坐标. 客户区指的是当前窗口. 如果父div的position定义为relative,子div的position定义 ...

  2. JavaScript实现计算需要更改的位数,以便将 numberA转换为 numberB(bitsDiff)算法(附完整源码)

    JavaScript实现计算需要更改的位数,以便将 numberA转换为 numberB(bitsDiff)算法(附完整源码) countSetBits.js完整源代码 bitsDiff.js完整源代 ...

  3. 详解 javascript中offsetleft属性的用法(转)

    详解 javascript中offsetleft属性的用法 转载  2015-11-11   投稿:mrr    我要评论 本章节通过代码实例介绍一下offsetleft属性的用法,需要的朋友可以做一 ...

  4. 服务器挂起文件怎么删除,撤消挂起的更改或查看挂起的更改的列表

    撤消挂起的更改或查看挂起的更改的列表 10/11/2017 本文内容 您可以随时查看源控件下某个解决方案挂起的更改的列表,或者可以撤消所做的任何文件更改,以便还原上次签入到 Team Foundati ...

  5. 如何更改文件夹的图标!如何更改文件的图标!

    在windows系统下,怎样使自己的 文件夹/  文件 等东西,的图标,变的好看. 怎么更改文件夹的图标!如何更改文件的图标! 呵呵 先怎么更改文件夹的图标! 有时候文件夹太多了,想要找到哪个程序的文 ...

  6. 如何更改html的默认应用,win10更改默认打开程序设置方法_win10怎么更改应用默认打开方式-win7之家...

    在使用win10系统过程中,对于一些需要借助工具才能够打开的文件,我们每次在打开之前都会有一个选择打开的程序,对此有些用户就想要将其设置成默认打开方式,以此来较少一些不必要的选择,那么win10怎么更 ...

  7. 【MATLAB第11期】#源码分享 |时间序列数据绘图,横坐标更改为时间轴 横坐标轴参数更改 日期间隔设置 日期标签或格式更改

    [MATLAB第11期]#源码分享 |时间序列数据绘图,横坐标更改为时间轴 横坐标轴参数更改 绘图问题解决方案 1.导入数据方式(识别时间数据) 2.案例展示 (1)打开数据 (2)定义时间和数据 ( ...

  8. focusky如何转成html,Focusky怎样更改交互动作 Focusky交互动作更改办法

    Focusky怎样更改交互动作 Focusky交互动作更改办法 发表时间:2018-10-04 来源:必杀器整理 软件安装:装机软件 关于电脑装机必须的软件,比如windows office系列办公软 ...

  9. 仿小米导航栏;导航栏悬浮滚动更改背景色javascript实现;

    一.实现效果 小米字体没引用,导航栏文字随便调的,仅供参考 二.代码 1.html <!DOCTYPE html> <html lang="en">< ...

最新文章

  1. JSP与Web技术概论
  2. 传授“带权重的负载均衡实现算法”独家设计思路!
  3. netty-阻塞模式,非阻塞模式
  4. MySQL如何向表中增加、修改字段
  5. UVALive - 3126 Taxi Cab Scheme(最小路径覆盖-二分图最大匹配)
  6. python去掉字符串中空格的方法
  7. javascript各种事件
  8. spring mvc框架请求注解解析,内部资源视图解析器
  9. asterisk账号和拨号方案mysql存储(静态)
  10. matlab练习程序(图像放大/缩小,放大没有进行插值操作)
  11. python教程视频-私藏已久的7个Python视频教程
  12. Scikit-learn快速入门教程和实例(一)(二)
  13. 互联网知识:工作多年的程序员都说不全
  14. 初级算法15.有效的字母异位词
  15. Win2D 官方文章系列翻译 - DPI (每英寸点数)和 DIPs(设备独立像素)
  16. python将txt中文文本转二进制文本及转回
  17. Android分享wifi给电脑,使用Android手机共享手机网络给PC上网
  18. 包邮再送500份!我们自制了一张【数据分析知识鼠标垫】,抓紧领取
  19. C++与C#相比,哪个更适合开发大型游戏?
  20. iOS底层原理:weak的实现原理

热门文章

  1. java以太坊库web3j的maven插件
  2. sublime python 断点测试_使用Sublime Text搭建python调试环境
  3. Python人机石头剪刀布
  4. ngnix配置启动vue项目
  5. 从零开始学Python:第十二课-常用数据结构之元组
  6. 无限法则为什么进不了服务器,无限法则登录服务器不在国家地区开放解决办法_无限法则欧洲国家不能登录怎么办_玩游戏网...
  7. 遇到抖音刷访问量的案例
  8. 老年人全身皮肤瘙痒案
  9. css 图片紧贴页面底部,CSS StickyFooter——当内容不足一屏时footer紧贴底部
  10. op 云服务器,op手机云服务器(op手机云服务怎么退出)