[英]Dart Element: call function on embedded JS Object
在這種情況下,它適用於SVG。 我可以通過查詢獲得SVG元素,如下所示:
Element svgEL = querySelector('svg');
如果我看一下'svgEL'對象,它包含(簡要):
[[javascript view]]: svg
[[class]]: SvgSvgElementImpl
...
getScreenCTM: function() // I want to call this
...
我想我要在某個實例上實例化一個JsObject,然后在該實例上執行callMethod,但是我似乎無法弄清楚如何使它工作。
有任何想法嗎?
最簡單的方法是使用相應的Dart類GraphicsElement
,此方法具有getScreenCTM
https://api.dartlang.org/stable/1.23.0/dart-svg/GraphicsElement-class.html
因此強制轉換為這種類型:
GraphicsElement gElem = svgEL as GraphicsElement;
gElem.getScreenCTM();
感謝Jonas對dart:svg庫的注意。
事實證明我不需要它,因為我在事件中處理該事件,並且事件目標對象是原始js'g'對象(這在鼠標懸停時)。 因此,我因此能夠得到所需的東西:
var jsvg = event.target.ownerSvgElement;
var mtx = jsvg.getScreenCtm();
...
然后,我可以創建該點並進行逆變換以及所有其他操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.