我有一个ul,我想在点击一个孩子时创建一个提醒。
<ul id="myul">
<div class="test">
<div class="test1">
<li></li>
<li></li>
</div>
</div>
</ul>
这样的事情是可能的:
$(document).on('click', '#myul.find(li)', function()
{
alert('hey!');
}
我无法使用#myul > li
,因为我在li
之前还有其他孩子。
答案 0 :(得分:1)
ul
个元素最多只能包含li
个元素,这些元素最终与ol
和ul
元素混合在一起。你可以修改你的html和jquery,如:
$(document).on('click', '#myul ul li', function() {
alert('hey!');
});
ul,
li {
list-style-type: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="myul">
<li class="test">
<ul class="test1">
<li>rasd</li>
<li>sadsad</li>
</ul>
</li>
</ul>
答案 1 :(得分:1)
您可以使用
$(document).on('click','#myul li', eventHandler)
这意味着您要在文档上注册事件处理程序,但只有当事件来自eventHandler
时才会调用#myul li
,即li
myul
个孩子li
,不仅仅是直接的孩子,也可以是适合你的情况的后代。
但我建议您甚至将事件注册的范围缩小到最近的$('#myul').on('click','li', eventHandler)
祖先,如下所示。
String str = "He is a very very good boy, isn't he?";
String[] Val = str .split("[\\W]");
答案 2 :(得分:0)
您可以使用简单的css子选择器,如下所述。它将直接适用于儿童,而不仅仅是任何后代。
注意:根据http://w3.org标准,你无法使直接的孩子成为ul。 div标签应该在li里面。
data OrdTree a = OrdTree a [OrdTree a]
deriving (Show)