jquery - jQuery:在单独的 DIV 上克隆和剪切部分 SVG 图像
问题描述
我有一个定义红色正方形、橙色圆圈和绿色圆圈的 SVG 图像:
目标是在单独的 div 上显示图像的一部分/剪辑(例如从像素 50,50 到 100,100,仅突出显示绿色圆圈的区域),但我不知道如何重新分配'视图框的值:
<svg width='200' height='200' id='main' viewBox='0 0 100 100'>
<rect x='10' y='10' width='80' height='80' fill='red'></rect>
<circle cx='25' cy='25' r='25' fill='orange'></circle>
<circle cx='75' cy='75' r='25' fill='green'></circle>
</svg>
<div id='portion'></div>
<script type='text/javascript'>
svgclone = $('#main').clone();
svgclone.width(50);
svgclone.height(50);
$('#portion').html(svgclone);
</script>
是否有任何技巧或解决方法可以在单独的容器上显示本机 SVG 的特定部分(不是从原点 0,0 开始)?
解决方案
jQuery.attr()
将属性名称转换为小写,viewbox
从viewBox
. 改用泛型.setAttribute()
:
svgclone.get(0).setAttribute('viewBox', '50 50 50 50')
推荐阅读
- aws-lambda - 无法在 Terraform 中使用 AWS SecretManager 添加 Lambda 函数
- java - 是否可以设置 Jackson 以将未命名的包装器对象排除到 API 返回的 JSON 数组中?
- c# - 从 Mat 的特定值创建蒙版(在 EMGU 中)
- android - 为什么 child.layout() 的第三个和第四个参数都带有前缀?
- arrays - 在 react-quiz-component 依赖中控制 questionPic 的大小?
- c# - C# 将 if 检查添加到代码块(我没有经验,需要帮助)
- android - 多层建筑中的空间定位,无需在建筑物中安装传感器
- android - 用于 android 的 ML-Kit 人脸检测是否支持 GPU 加速?
- docker - 如何在 WSL + Docker + VS Code 设置中防止用户冲突
- github-codereviews - 要求审查全同态加密库