javascript - js为什么不能将css属性赋值给变量?
高洛峰
高洛峰 2017-04-11 10:43:06
[JavaScript讨论组]
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(5)
天蓬老师

jQ用爽了,忘记那些原生写法了嘛~

  oBtn.onclick = function() {
    // var a = oTest.style.display;
    var a =document.defaultView.getComputedStyle(oTest, null).display; 
    console.log(a); 
  };

这个我在红皮书里见得,在这再补个资料,张鑫旭的

PHPz

貌似js获取样式值有一个坑,好像是不能直接获取到css样式文件内的,只能获取内联样式值,你可以这样

var attrStyle = function(elem, attr) { //获取样式

                if(elem.attr) {
                    return elem.style[attr];
                } else if(elem.currentStyle) {
                    return elem.currentStyle[attr];
                } else if(document.defaultView && document.defaultView.getComputedStyle) {
                    attr = attr.replace(/([A-Z])/g, '-$1').toLowerCase();
                    return document.defaultView.getComputedStyle(elem, null).getPropertyValue(attr);
                } else {
                    return null;
                }
            }
            

var height = parseInt(attrStyle(elem, "height")); //获取元素height属性值

大家讲道理

其实不是空啦,是空字符串 "" 你不要去和block比较,直接和""比较就行了。

巴扎黑

这个是引用和值的区别 Σ( ° △ °|||)︴

PHP中文网

DOM.style设置的是内联属性,一般用CSS的话,display就应该是"",所以初始化的时候可以先设置为block,或者HTML写上style='display:block;';

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号