为啥obj.style.[attr]换成obj.style.attr就不管用了

来源:4-3 任意属性值(一)

雨路

2016-03-24 11:31

http://img.mukewang.com/56f35ed10001b35610290530.jpg

我一直以为“.”都可以换用“[ ]”,但是听课以后我换用“.”就没有效果出来了,这是为啥?js中“.”和“[ ]”用法主要有哪些区别?请大神赐教

写回答 关注

4回答

  • chengyoubin
    2016-03-24 15:29:25
    已采纳

    那么如果width不是固定的,而是作为参数传进来的,那在外面传参数的时候,参数必须是以字符串的方式传,比如 getStyle(oDiv,'width'),这样传到函数里的也是一个字符串,对应的里面如果用点或者[''],就是这样:obj.currentStyle['width'] 或者 obj.style.'width'.这两种写法,显然第二种是错的,只能写成第一种。所以如果样式属性如果是当作参数传进来的,只能以['']的方式来接收。

    雨路

    我查到别人解释是属性是变量时用“[ ]”,您这么说也好理解,我大概明白了,谢谢!

    2016-03-24 17:30:34

    共 1 条回复 >

  • gdaska
    2017-07-07 09:29:49

    这是那节课?

  • 图图233
    2016-03-24 15:41:28

    js中获取某个属性用.attr()

  • chengyoubin
    2016-03-24 15:02:02

    我也遇到这个问题

JS动画效果

通过本课程JS动画的学习,从简单动画开始,逐步深入各种动画框架封装

113923 学习 · 1443 问题

查看课程

相似问题