bzu*_*ith 25 javascript jquery svg lowercase attr
我试图操纵svg'viewBox'属性,看起来像这样:
<svg viewBox="0 0 100 200" width="100" ...> ... </svg>
Run Code Online (Sandbox Code Playgroud)
运用
$("svg").attr("viewBox","...");
Run Code Online (Sandbox Code Playgroud)
但是,这会在名为"viewbox"的元素中创建一个新属性.请注意小写而不是预期的camelCase.我应该使用另一种功能吗?
bzu*_*ith 21
我能够使用纯javascript来获取元素并使用设置属性
var svg = document.getElementsByTagName("svg")[0];
Run Code Online (Sandbox Code Playgroud)
和
svg.setAttribute("viewBox","...");
Run Code Online (Sandbox Code Playgroud)
小智 5
根据http://www.w3.org/TR/xhtml1/#h-4.2“XHTML文档必须对所有 HTML 元素和属性名称使用小写。”
\n\n因此,为了避免 XHTML 文档中的属性转换为小写,您需要使用 创建指定命名空间的元素document.createElementNS(),例如:
var svg = document.createElementNS(\'http://www.w3.org/2000/svg\', \'svg\');\n svg.setAttribute(\'viewBox\', \'0 0 512 512\xe2\x80\x99);\nRun Code Online (Sandbox Code Playgroud)\n\n如果您计划添加<use/>元素,则还需要在创建元素和属性时指定命名空间xlink:href,例如:
var use = document.createElementNS(\'http://www.w3.org/2000/svg\',\'use\');\n use.setAttributeNS(\'http://www.w3.org/1999/xlink\', \'xlink:href\', \'#your_svg_id\');\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
6478 次 |
| 最近记录: |