【问题标题】:Is there any method to find element by snap id in Snap svg?有什么方法可以在 Snap svg 中通过 snap id 查找元素?
【发布时间】:2015-06-07 22:04:44
【问题描述】:

在 raphael 中有一个 Paper.getById() 方法并且效果很好,但在 Snap 中没有这样的方法,我找不到任何类似的方法。

我看到 Snap 为纸上的每个元素设置了唯一 id,类似于 pathSian06waj35 。但我在文档中找不到任何信息如何使用它通过该 ID 获取 Element 对象。

【问题讨论】:

    标签: javascript raphael snap.svg


    【解决方案1】:

    您通常根本不使用它,作为 Snaps 自己的引用,您更有可能设置自己的 id(或者它会在 SVG 标记中),然后访问它自己的变量,或者通过css 选择器、它的 id、类等。

    例如

    var rect = s.rect(10,10,100,100).attr({ id: "myRect" });
    
    //to access via id attribute
    console.log( s.select('#myRect') );
    // or
    console.log( Snap("#myRect") );
    

    注意:在 Snap 的早期版本中,id 属性无法正常工作,因此请确保您使用的是版本 3 及以上版本。

    【讨论】:

    • 我明白了。但实际上我不需要为每个元素生成一个 id。在 Raphael 中使用 raphaelid 真的很有用。
    • 也许如果您修改了为什么在问题中需要它,而不是通过其他应用程序等或内部变量导出或使用的属性。不是说没有用例,只是很难从例子中看出。
    猜你喜欢
    • 2015-04-23
    • 2017-02-10
    • 2014-02-19
    • 2019-05-28
    • 2016-11-28
    • 2015-04-02
    • 2015-01-13
    • 2017-10-22
    • 1970-01-01
    相关资源
    最近更新 更多