javascript - createElement未插入dom中如何获取宽高
伊谢尔伦
伊谢尔伦 2017-04-11 12:33:36
0
5
673

我创建一个元素createElement('p')
但是还没插入dom中,给他一个className,class样式有定了宽高,怎么获取啊?
getAttribute为null,offsetWidth为0;
但是在插入之后就能找到了,不过我要在插入dom之前获取它的宽高

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

모든 응답 (5)
PHPzhong

插入之前页面上没有这个节点,怎么获取? 如果你想获取的话就不能用js创建p了,建议display: none隐藏掉,dom节点是存在的,就可以获取它的属性、样式,如果是在ajax请求之后创建的话就创建一个空的p,请求后再给这个节点中插入数据等。
当然,不知道有没有更好的解决办法,我以前都是这么处理的。如果有更好的解决办法提醒一下哟~

    黄舟

    插入前怎么可能知道它的宽和高呢?毕竟,我们的浏览器可能运行在各种设备上,它有各种不同的分辨率,同一个元素插入后就会有不同的宽和高。所以还是得在插入后获得它的宽和高。如果你不想让用户看见,可以设置元素的visibility=false来隐藏它。

      黄舟

      如果只是创建了元素节点 但没有插入到文档树中去 那么这个元素节点只能称作文档碎片 是不能获取宽高的

        黄舟

        迷之问题,我觉得你的思路有问题,可以说下你想实现什么。

          迷茫

          除了固定宽度和高度的元素,其他元素的这个两个属性都是渲染的时候根据其他元素和显示区的情况实时计算的。。。

            최신 다운로드
            더>
            웹 효과
            웹사이트 소스 코드
            웹사이트 자료
            프론트엔드 템플릿
            회사 소개 부인 성명 Sitemap
            PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!