2016-11-16 48 views
1

我有后续的层次:“菜单>李:第一胎”作为“ getBoundingClientRect()左边的”变量

menu > li:first-child 
menu > li:nth-child(2) 
menu > li:nth-child(3) 
menu > li:nth-child(4) 
menu > li:nth-child(5) 
menu > li:nth-child(6) 
menu > li:nth-child(7) 
menu > li:nth-child(8) 
menu > li:nth-child(9) 

我试图把每一种在给一个变量,以:

var fromleft = box.getBoundingClientRect().left; 
var fromtop = box.getBoundingClientRect().top; 

它现在的工作与:

var box = document.getElementById('menu'); 
var fromleft = box.getBoundingClientRect().left; 
var fromtop = box.getBoundingClientRect().top; 

但与:

var box = document.getElementById('menu > li:first-child'); 
var fromleft = box.getBoundingClientRect().left; 
var fromtop = box.getBoundingClientRect().top; 

我需要做什么才能在变量中使用第一个孩子或第n孩子?

+0

我碰到过这个,我认为这是我所需要的,但仍然测试! “var box = document.getElementById('sdt_menu').getElementsByTagName('li')[2];” – Gidiolf

回答

0

我遇到了这个,我认为这是我需要的!

var box = document.getElementById('sdt_menu').getElementsByTagName('li')[0];" 

和... 0 =第一子,1 =第n个孩子(2),抽搐

也... '礼' 可以改变为 'DIV' 等。

(或似乎!)