Mootools - 使用 .each 选择器定位子元素
我试图定位 LI 内的 UL,但遇到了麻烦。 这是 HTML:
<ul id="main_nav">
<li class="main"><a href="#">Section 1</a>
<ul id="dropdown">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 2</a></li>
</ul>
</li>
<li class="main"><a href="#">Section 2</a>
<ul id="dropdown">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 2</a></li>
</ul>
</li>
<li class="main"><a href="#">Section 3</a></span>
<ul id="dropdown">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 2</a></li>
</ul>
</li>
这是 JS:
window.addEvent('load', function() {
$$('li.main').each(function(el){
el.getChild('dropdown').addEvent('mouseenter',function(e){
alert("over!");
});
el.getChild('dropdown').addEvent('mouseleave',function(e){
alert("out!");
});
});
}
我认为问题是当我尝试使用 el.getChild('dropdown') 获取 LI 的子项时,但我不知道有任何其他方法可以做到这一点。 我不是编码员,因此非常感谢任何帮助。 谢谢!
I'm trying to target a UL that's inside a LI and I'm having trouble. Here's the HTML:
<ul id="main_nav">
<li class="main"><a href="#">Section 1</a>
<ul id="dropdown">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 2</a></li>
</ul>
</li>
<li class="main"><a href="#">Section 2</a>
<ul id="dropdown">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 2</a></li>
</ul>
</li>
<li class="main"><a href="#">Section 3</a></span>
<ul id="dropdown">
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</a></li>
<li><a href="#">Item 2</a></li>
</ul>
</li>
and here's the JS:
window.addEvent('load', function() {
$('li.main').each(function(el){
el.getChild('dropdown').addEvent('mouseenter',function(e){
alert("over!");
});
el.getChild('dropdown').addEvent('mouseleave',function(e){
alert("out!");
});
});
}
I think the problem is when I try to get the child of the LI by using el.getChild('dropdown'), but I don't know any other ways to do this. I'm not a coder so any help is appreciated. Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
可能导致问题的是您的重复 ID。
id
在整个页面中只能使用一次。 因此,超过 1 个是无效的 HTML,并且可能会给您带来不需要的库结果。
如果您想保留重复项,请尝试
name
或class
属性。现在,我不确定它是否在版本之间发生了变化,但我只找到了复数
getChildren
在文档中。但是,话又说回来,我对 Mootools 不是很熟悉。
正如你可能知道的那样。 ;)
Something that may be causing issues are your duplicate ids. An
id
should only be used once throughout the page. So, having more than 1<ul id="dropdown">
is invalid HTML and may give you unwanted results with libraries.If you want to keep duplicates, try
name
orclass
attributes.Now, I'm not sure if it might've changed between releases, but I'm only finding the plural
getChildren
in the docs.But, then again, I'm not very familiar with Mootools.
As you can probably tell. ;)
您可以使用 getFirst 方法而不是 getChild:
You could use the getFirst-method instead of getChild: