disabled是什么意思-多指设备/网页功能被禁用,也可指身体残疾
上周改前端代码的时候盯着屏幕发呆半天,一直搞不懂disabled是什么意思,照着网上抄的代码调试,页面按钮死活点不动,白白浪费了一晚上的时间。本身不太爱主动查词条,又害怕开口问同事,就自己瞎试各种参数,越改越乱,典型的又社恐又想偷懒伸手找现成答案,最后硬生生靠一次次改错摸清楚了这个单词实际用法。
一开始完全搞混了它和readonly的区别。以为只要写上这个属性,只是单纯让按钮文字变灰,页面看起来整洁一点,点击还是能正常触发指令。当时直接给表单所有提交按钮都加了disabled属性,写完代码自信点击提交,页面毫无反应,光标放在按钮上,鼠标箭头都不会变成小手样式。
敲了几十行代码来回删除重写,还是找不到问题根源。
身边工位的同事随口提了一句,这个词就是直接锁住功能,不是单纯只读。
没好意思继续追问细节,只能自己对着浏览器开发者工具一点点看源码。网页里带有disabled属性的按钮,底层直接被浏览器屏蔽了全部点击、双击、回车触发的交互事件,哪怕强行改前端样式把灰色按钮调回正常颜色,依旧没办法进行任何操作。
后来才反应过来,日常英文语境里它还有另一层基础含义。平时刷英文短视频、看外文公告的时候总能见到这个单词,字面本意是使丧失能力、失效,形容人的时候,就是指身体存在障碍、行动或者感官有不便,也就是常说的残疾相关释义。
之前一直把两层含义割裂开,以为编程里是专属黑话,和日常英文单词毫无关联,其实词根含义完全互通。编程里禁用控件,就是让按钮丧失操作能力;形容人,就是身体部分机能丧失,本质逻辑一模一样。
之前还犯过一个很蠢的错误,写代码的时候手动写了disabled="false",想靠这个写法取消禁用状态,以为和普通变量开关一样,赋值false就能恢复按钮功能。结果页面刷新之后,按钮依旧灰掉无法点击,折腾好久才搞明白,前端标签里只要出现disabled这个单词,不管后面赋值什么内容,功能都会直接被锁定,想要恢复可用,只能彻底删掉这个属性,改赋值完全没用。
平时生活里碰到这个词的场景也很固定。地铁无障碍标识、医院外文指引牌上偶尔会标注disabled access,指的就是无障碍通道,对应上了形容身体机能受限的本义。而日常普通人沟通口语里,反而很少直接用这个单词描述人群,大多会换更委婉温和的表达,书面标识才会常规使用。
没有特意整理完整的词义清单,只是遇到一次卡点,就记一次对应的使用场景。不用死记硬背词性和多条书面释义,遇到场景直接对照就行。
关掉调试页面的时候,窗外楼道传来开关门的响动,突然不想再纠结更多延伸词组了。最后悔的就是一开始碍于面子不肯开口问,十分钟能弄懂的问题,自己硬熬了两个小时。