首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >快照svg获取viewBox

快照svg获取viewBox
EN

Stack Overflow用户
提问于 2015-12-04 01:04:06
回答 1查看 1.4K关注 0票数 0

我有一个简单的SVG文件,其中包含一个矩形,如下所示:

代码语言:javascript
复制
<svg id="mySvg" onload="init()" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="297mm" viewBox="0 0 744.09448819 1052.3622047" width="210mm" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata892">
  <rdf:RDF>
  <cc:Work rdf:about="">
  <dc:format>image/svg+xml</dc:format>
  <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
  <dc:title/>
  </cc:Work>
  </rdf:RDF>
</metadata>
<script xlink:href="snap.svg-min.js" type="text/ecmascript"/>
<rect id="myRect" opacity="1"  rx="28.143" ry="37.785" height="225.71" width="365.21" y="260.93" x="94.286"/>
</svg>

...and然后,就在结束</svg>标记之前,我放了这个脚本:

代码语言:javascript
复制
<script><![CDATA[
var mySvg, myRect;

function init(){
  mySvg=Snap("#mySvg");
  myRect=mySvg.select("#myRect");
  myRect.click(rectCursor);
}

function rectCursor(evt){
  if(evt.type==="click"){
  alert(mySvg.attr("viewBox"));
}

]]></script>

我只是想让警告框在我单击矩形时显示当前对象,悬停,当我单击矩形时,警告框只显示对象对象( viewBox

我该如何实现这一点有什么建议吗?如何正确地将对象对象转换为可读字符串?

EN

回答 1

Stack Overflow用户

发布于 2015-12-04 04:20:33

函数的作用是:返回一个具有描述viewbox属性的对象。该对象的x、y、width、height属性都是数值。该对象具有vb属性,该属性是包含x、y、width、height值的字符串值。

使用x,y,width,height属性的代码可能如下所示...

代码语言:javascript
复制
var viewBox = mySvg.attr("viewBox");
alert(viewBox.x + " " + viewBox.y + " " + viewBox.width + " " + viewBox.height);

使用vb属性的代码可能如下所示...

代码语言:javascript
复制
alert(mySvg.attr("viewBox").vb);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34071972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档