2013-12-08 29 views
2

簡而言之 - 我試圖通過將鼠標懸停在左側的標題之一上來更改路徑的筆畫不透明度(您會看到「presidio」標題有一個鏈接到它) 到目前爲止我看到的JQuery/JavaScript的答案都沒有工作。更改筆畫不透明度的<svg>對象的路徑

我試過的最新片段是:

d3.select('.presidio').on('mouseover', function(){ 
    console.log('hey!'); 
    var object = document.getElementById("presidio"); 
    object.setAttribute("stroke-opacity", 1); 
}); 

的SVG是如此巨大粘貼在這裏將需要一萬年閱讀。但如果你願意來檢查SVG元素在這裏:http://www.petegetscreative.com/hoods/hoods.html

回答

4

要改變一個元素的透明度與ID爲「要塞:

d3.select('#presidio').style("stroke-opacity", "1"); 

要通過效果添加鼠標與類的所有元素‘要塞’

d3.selectAll('.presidio').on('mouseover', function(){ 
    d3.select(this).style("stroke-opacity", "1"); }) 
+0

實際上,我發現一個非常類似的解決方案,就是你回答這個問題的時候:p我是通過在mouseover函數中做到這一點做到的:$('#mySVG')find(「path.port」).css('stroke 「不透明度」,「1」); –

0

我沒有測試過這一點,但你嘗試過:

object.setAttribute("stroke-opacity", "1"); 

我認爲有引號是正確的語法。

+0

我敢肯定你可以使用任何一種引用類型,只要它是一致的,無論哪種方式顯示爲TypeError:'null'不是控制檯中的對象(評估'object.setAttribute')。但是沒有引用1就是我認爲的一個語法錯誤。 –

+0

同樣,我只是檢查一下,看看這個小小的改變是否能解決你的問題。 – kiaaanabal