Javascript 设置SVG图形栏高度的动画
问题: 我正在尝试设置SVG图形栏高度的动画: 我的部分问题是Javascript 设置SVG图形栏高度的动画,javascript,html,css,svg,jquery-animate,Javascript,Html,Css,Svg,Jquery Animate,问题: 我正在尝试设置SVG图形栏高度的动画: 我的部分问题是.height()返回0,而.attr(“height”)返回真实高度 $(function(){ var $theBars = $("#v-bars").children(); var BarsHeight = $theBars.each(function(index, element ) { var origHeight = $(this).attr("height"); console.log( index +
.height()
返回0
,而.attr(“height”)
返回真实高度
$(function(){
var $theBars = $("#v-bars").children();
var BarsHeight = $theBars.each(function(index, element ) {
var origHeight = $(this).attr("height");
console.log( index + ": " + $(this).attr("height"));
console.log( index + ": " + $(this).height());
});
});
我计划将高度设置为零,并使用jquery.animate
在触发eventHander
时设置高度动画,但由于返回的高度问题,似乎无法设置
问题:
.height()
返回零李>
可以编辑“高度”属性。这需要弄清楚如何将HTML中的值数组传递给它高度和宽度是CSS属性,即您可以编写
,然后高度()将是100%。在SVG中,高度和宽度是XML属性,因此您可以编写
attr()获取属性值,这就是它工作的原因
您可以将原始值存储为自定义属性,惯例是从开始这样做,然后在单击时将自定义属性值应用回工具栏。Thx!我来看看这个方法。所以XML元素没有高度或宽度属性!他们只尊重高度或宽度属性!SVG的创建者决定宽度/高度为属性,HTML的创建者选择CSS样式。它与XML并没有真正的联系。