2015-05-20 47 views
3

我有一個圖表我已經在JavaScript庫d3中作出。它的大小取決於窗口的大小,像這樣:有沒有一種方法來選擇父div而不知道它的類名或ID?

var GUIWidth = window.innerWidth; 
var GUIHeight = window.innerHeight; 

這工作正常,但如果我想要把這個圖形到另一個頁面,但使它更小呢?我不想進入這裏並調整它,我想能夠獲得容納它的容器的大小並使用該寬度和高度。

但在我的情況下,我不知道容器的ID(因爲另一個人正在開發UI)。

如何獲得我的曲線圖被保持在父div的ID(和寬度和高度優選)

下面是示例代碼:

var svg = d3.select("#interface") //this is my graphs container 
    .append("div") 
    .attr("id", "svgContainer") 
    .attr("width", GUIWidth) 
    .attr("height", GUIHeight); 

這裏interface是我的圖表容器但我想要做這樣的事情來獲得寬度和高度:

var GUIWidth = $(parentOf('#interface')).innerWidth(); 
var GUIHeight = $(parentOf('#interface')).innerHeight(); 

這可能嗎?

我也想堅持到使用Javascript/jQuery來做到這一點,因爲我使用GUIWidth & GUIHeight變量的其他地方在我的代碼,以確定其他的div :)

的大小三江源

+3

'$( '#接口')父();' – jcubic

+1

你有沒有嘗試過jQuery的[家長](https://api.jquery.com/parent/)功能:'$('#接口').parent()'? – Dinei

+0

我猜你的意思是「祖先」而不是「父母」?無論哪種方式,請訪問http://api.jquery.com並在搜索框中輸入單詞。 –

回答

2

嘗試這個? 。

var GUIWidth = $('#interface').parent().innerWidth(); 
var GUIHeight = $('#interface').parent().innerHeight(); 
+0

完美:)謝謝,應該接受我什麼時候可以 – thatOneGuy

相關問題