草庐IT

mermaid-svg-Rc

全部标签

javascript - 根据内容调整 SVG 元素的大小

我想根据其内容调整SVG元素的尺寸。JSfiddle:http://jsfiddle.net/4pD9N/这里我有一个例子。SVG应该“缩小”以适应元素+每边10px的边距。换句话说:我想为未使用的空间裁剪svg...我知道我必须使用getBBox。但是如何计算总宽度和高度呢? 最佳答案 默认情况下,SVG绘图的原点与容器的原点相同。这意味着您绘图的(0,0)位于SVG元素的左上角。要使内容居中,您应该相对于容器平移绘图。可以通过相对于getBBox的结果修改SVG元素的viewBox属性(期望四个值:"minxminywidthh

javascript - 如何防止默认工具提示悬停在 svg 元素上?

我正在尝试显示在HTML页面中绘制的交互式SVG图像。我没有使用javascript/jQuery语言的经验,但使用PowerTip等一些jQuery插件,我目前能够在将鼠标悬停在SVG元素上时显示自定义工具提示。自定义工具提示出现,但一秒钟后消失,当它们被默认工具提示的外观(在所有浏览器中)关闭时,只显示“标题”元素的内容。有没有办法禁用默认工具提示?下面是我使用PowerTip显示自定义工具提示的方法。$('#myGraph.node').on({powerTipPreRender:function(){vartitle="";$('atext',this).each(functi

javascript - 如何在 angular cli 1.0.0-rc.0 中正确包含 jQuery?

我在AngularJS项目中使用基于jQuery的select2组件。我和这里的人有类似的问题:https://github.com/fronteed/icheck/issues/322,并使用那里的建议解决了它。准确地说,我在不使用该建议时收到错误TypeError:$(...).select2isnotafunction。即我在@angular/cli/models/webpack-configs/common.js中添加了Webpack配置的下一行。plugins:[newwebpack.ProvidePlugin({$:"jquery",jQuery:"jquery"})]这是

javascript - 为 svg :image 设置圆 Angular

我正在尝试使用d3.js为ssvg:image(嵌入在SVG中的图像)制作圆Angular。我找不到如何正确设置图像样式的方法,因为根据W3C规范,我应该能够使用CSS,但较窄的边框和圆Angular边缘对我来说都适用。提前致谢。vis.append("svg:image").attr("width",width/3).attr("height",height-10).attr("y",5).attr("x",5).attr("style","border:1pxsolidblack;border-radius:15px;").attr("xlink:href","http://www

javascript - 动态添加 SVG 渐变

我有这个带有路径的SVG容器。我想编辑它,所以路径的填充将是一种模式。这是我失败的尝试:我添加一个渐变:$('svgdefs').prepend('');然后更改路径的填充:$(base+'svgpath').each(function(){this.setAttribute('fill','url(#MyGradient)')}这行不通。我错过了什么? 最佳答案 您的问题(您“缺少的”)是jQuery在XHTMLnamespace中创建新元素,而SVG元素必须在SVGnamespace中创建。您不能在SVG元素的字符串中使用原始代

javascript - Angular 2 - 如何将 SVG 属性数据绑定(bind)到组件属性?

我正在学习Angular2。为此,我正在尝试创建基本示例。我有一个包含此字符串的变量的类:M916.2L4.812l-1.41.4L919217l-1.4-1.4L916.2z我正在尝试将该字符串用作svg元素的参数只是为了检查:这个svg有效:模板中的变量icon包含正确的字符串。我正在尝试这样做:并将"添加到参数d中。但我无法使其工作 最佳答案 您需要使用attributebinding带有SVG元素: 关于javascript-Angular2-如何将SVG属性数据绑定(bind)

javascript - 动态禁用 SVG 元素的触摸操作(过度滚动)

我在Chrome上遇到触摸屏过度滚动的问题。我有一个包含SVG元素的文档,其中包含一些形状,比如一个矩形:现在,我想使矩形可拖动,这意味着我想禁用相应上的各种触摸操作。元素,通过设置它的样式属性touch-action:none.这在除Chrome之外的所有桌面浏览器上都能正常工作。在Chrome上,当我在一个矩形上触摸并移动时,浏览器的过度滚动功能会启动。这会导致浏览器窗口笨拙地移动,以及我在矩形上设置的所有指针事件都被取消。即pointermove注册几分之一秒,然后在过度滚动开始时停止。pointerup即使在触摸被释放时也不会被调用。现在,如果我有一个HTML元素而不是SVG元

javascript - react-native-svg 中 <Rect/> 的动画宽度

我为进行了简单的动画插值元素,但是我在我的用户界面上没有看到任何变化,就好像宽度保持为0。我手动将我的最终值添加到组件中作为width={149.12}并且显示正确,因此我现在有点困惑为什么它没有从动画中获取相同的值?react-native@0.57.1​​react-native-svg@7.03针对iOS12这是完整的实现,本质上是一个包含当前值和总值的法力和健康条,即50和100应该显示矩形的一半宽度。(示例使用typescript,但如果需要,答案可以用纯js编写)import*asReactfrom'react'import{Animated}from'react-nati

javascript - SVG 捕获鼠标坐标

我知道之前有人在这里问过关于svg鼠标坐标的问题,但我对我目前遇到的行为感到很困惑,似乎没有一个线程能完全解决它。我用来捕捉坐标的方法:varpt=svg.createSVGPoint();//Createdoncefordocumentfunctionalert_coords(evt){pt.x=evt.clientX;pt.y=evt.clientY;//Thecursorpoint,translatedintosvgcoordinatesvarcursorpt=pt.matrixTransform(svg.getScreenCTM().inverse());console.log

javascript - 响应式或流畅布局的跨浏览器 SVG?

我选择使用Raphaëljavascript库以获得广泛的浏览器支持,但我无法让SVG在除Chrome和Firefox之外的任何浏览器中正确显示。我已经为此绞尽脑汁一段时间了,很想听听如何让SVG在响应式布局中工作。Chrome和Firefox完全按照我的意愿显示SVG。它统一缩放,保持正确的纵横比和给定宽度的父级百分比。InternetExplorer保持正确的宽高比,但不能与其父级一起正确缩放。Safari在宽度上与其父级正确缩放,但在高度上不行。相对于父容器的高度以某种方式设置为100%。Javascriptvarmenu=Raphael('menu','100%','100%'