2011-08-09 32 views
4

我工作的SVG腳本getElement的位置?

還有的getElementById或的getElementsByTagName

,但我找不到任何方法來獲取通過

位置

元素,如獲得其位置爲x = 10的元素, Y = 10。

有沒有什麼辦法可以實現這個目標?

+0

可能的重複http://stackoverflow.com/questions/1259585/get-element-at-specified-position-javascript – silex

+0

另一個可能的重複http://stackoverflow.com/questions/2174640/hit-testing-svg -shapes –

回答

8
var yourElement = document.elementFromPoint(10, 10); 

這是一個工作example,它改變了元素在指定點的背景顏色。

請注意,如果指定點位於文檔的可見區域以外,則elementFromPoint將返回null

+0

謝謝!但它似乎只返回一個元素。對?我想讓每個元素都在10,10中提出任何建議?我必須像ShankarSangoli所說的那樣使用jquery嗎? –

+0

哦對不起,我看到了...那麼是的,我認爲jQuery將是你最好的選擇。 –

+0

感謝您的分享。你不必爲此感到抱歉。這對我來說真的很有用 –

1

你可以試試這個:

$("svg").find("[x='10'][y='10']"); 

它會給所有SVG具有x = 10和y = 10

元素Working demo

+1

OP是否使用jQuery? – user113716

+0

我明白了,我的不好:)。但是,如果他開始使用jQuery,這將有助於OP。 – ShankarSangoli

+0

@Shankar - 在這種情況下不需要jQuery。看到我的答案。 –