-1

有什么方法可以通过单击存储的对象来获取父键?请查看我的 html 和代码:

HTML:

<ul id="one">
    <li>0</li>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>
<ul id="two">
    <li>0</li>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>

我的代码:以及我想要的:

function makeIt(params){
           params.grandParent1.parent1.sector.click(function(){
                console.log(sectorName,parentName,grandParentName) // how can i get this call, simply how can i fetch the key of values?

                // i expected is : sectorName : sector, parentName:parent1,grandParentName:grandParent1...like this
            })
        }
        $(document).ready(function(){
            params = {
                grandParent1:{
                    parent1:{sector:$('#one').find('li')}
                },
                 grandParent2:{
                    parent2:{sector:$('#two').find('li')}
                 }
            }

            makeIt(params);
        })

这可能吗?有什么好的方法来完成这件事吗?

这是小提琴:http: //jsfiddle.net/SUG6h/2/

4

2 回答 2

1

我想你在里面寻找这样的东西makeit()

sectorname = Object.keys(this); 
parentname = Object.keys(this.parent); 
grandparentname = Object.keys(this.parent.parent);

有关 Object.keys 的更多信息

正如 Rick 在下面指出的,IE8 不支持这 - 因此您还可以使用 for..in 语句来循环访问对象的键来获取信息。

于 2012-05-08T17:54:44.360 回答
0

你可以自己遍历DOM,找到父节点。

https://developer.mozilla.org/en/DOM/Node.parentNode

如果您已经在使用 jQuery 进行 DOM 操作,那么您确实应该保持某种一致性。

于 2012-05-08T18:10:46.137 回答