Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery将类添加到<;李>;何时<;a>;点击_Javascript_Jquery_Addclass - Fatal编程技术网

Javascript jQuery将类添加到<;李>;何时<;a>;点击

Javascript jQuery将类添加到<;李>;何时<;a>;点击,javascript,jquery,addclass,Javascript,Jquery,Addclass,我试图在单击a.more时向li添加一个类。但它不起作用 <ul> <li id="post-4" class="post"> <div class="text"> <span class="date">12/12/2013</span> <h3>The Title</

我试图在单击a.more时向li添加一个类。但它不起作用

        <ul>
            <li id="post-4" class="post">
                <div class="text">
                    <span class="date">12/12/2013</span>
                    <h3>The Title</h3>
                    <div class="post-excerpt">
                    <p>The excerpt will show</p>
                        <a class="more" href="#">read more..</a>
                    </div>
                    <div class="post-content">
                    <p>The full content</p>
                    <a class="less" href="#">close</a>
                    </div>
                </div>
            </li>
        </ul>
添加父项()。加上李的课

jQuery('.post').on('click', 'a.more', function(){
   jQuery(this).parents('li').addClass('active');
});
jQuery('.post').on('click', 'a.less', function() {
  jQuery(this).parents('li').removeClass('active');
});
尝试上面的代码。

用于添加和删除
li的

jQuery('.post').on('click', 'a.more', function(){
    jQuery(this).parents('li').addClass('active');
});
jQuery('.post').on('click', 'a.less', function() {
    jQuery(this).parents('li').removeClass('active');
});

由于用户在任何时候都只能看到两个链接中的一个,因此可以使用单个函数

jQuery('.post').on('click', 'a.more, a.less', function() {
  jQuery(this).closest('li').toggleClass('active');
});

a.less
在哪里?对不起,忘记添加了。请参阅上面的编辑。如果您找到完整的帮助。请投票并接受答案。请记住,此解决方案将向所有父
li
元素添加
active
类。如果您嵌套了
li
/
ul
,它将应用于所有祖先
li
元素。我相信
.nestest()
是一个更好的选择。
jQuery('.post').on('click', 'a.more, a.less', function() {
  jQuery(this).closest('li').toggleClass('active');
});