【发布时间】:2014-10-20 01:45:00
【问题描述】:
我正在尝试从这样的指令向 angularJs 元素添加一个属性:
element.attr('startOffset', val);
但是当我检查元素时,添加的属性是“startoffset”,其中“o”不是大写字母。
有没有什么办法可以给元素添加属性并保持单词大小写不变?
谢谢
【问题讨论】:
-
你没有。您只需将其设置为用破折号分隔,并在使用 attrs 时使用驼峰式大小写获取属性。所以就做
element.attr('start-offset', val); -
试过了。在这种情况下,它只是将属性设置为 'start-offset'
-
是的,我就是这么说的。。属性名称不区分大小写,所以即使您将其设置为
startOffset,它也将是startoffset,无论大小写如何,您都可以获得它。只需尝试在没有 jqlite 包装器的情况下设置它,element[0].setAttribute('startOffset', val);看看会发生什么。 为什么你还需要它在驼峰箱中,它有什么区别? -
谢谢。这似乎成功了。我希望它采用驼峰式,因为我正在尝试设置 svg 文本元素的 startOffset,并且由于某种原因,svg 需要它采用驼峰式。
-
这是怎么做到的? “startOffset”仍将是“startoffset”。
标签: javascript html angularjs angularjs-directive