老师我这里有个问题
来源:4-1 svg绘画各种形状
qq_麥芽糖
2018-12-10 09:48:21
<svg>
<g id="left_color" style="display:block">
<rect x="10" y="100" width="20" height="20" stroke="#fff" />
<rect x="40" y="100" width="20" height="20" stroke="#fff" />
<rect x="10" y="140" width="20" height="20" stroke="#fff" />
<rect x="40" y="140" width="20" height="20" stroke="#fff" />
</g>
<script type="text/javaScript">
var color_change = document.getElementById('color_change');
var left_color = document.getElementById('left_color');
var left_color_length = left_color.getElementsByTagName('rect');
var i = 0;
var clo='';
color_change.onclick = function(){
left_color.style.display="block";
}
left_color.onclick = function(){
for(i = 0;i < left_color_length.length; i++){
clo += left_color_length[i];
}
console.log(clo)
//color_change.style.fill=clo.style.fill;
}
</script>
</svg>
我获取到svg的数据是
这么奇怪的,是不是js不能获取到svg里面的内容的?
3回答
如果你打印输出的是console.log(clo);则可以分别打开数组的每一项,查看每一项对应的遍历到的html的内容,如:
比如打开0: rect则可以找到
如果你想单独获取数组中的某一项可以使用console.log(clo[xx]);的方法,譬如:
希望可以帮到你!
樱桃小胖子
2018-12-10
同学的打印语句写错位置了哦,如下:
希望可以帮到你!
樱桃小胖子
2018-12-10
同学是想实现什么效果呢?运行同学上传的代码
运行结果报错
原因是同学上传的代码中没有color_change这个id
建议同学描述一下想要实现什么样的效果哦,便于快速准确的帮你解答问题
祝学习愉快!
相似问题
回答 2
回答 1