.next() 和 .addClass() 在 jquery 中不起作用

Posted

技术标签:

【中文标题】.next() 和 .addClass() 在 jquery 中不起作用【英文标题】:.next() and .addClass() not working in jquery 【发布时间】:2012-04-24 07:46:34 【问题描述】:

朋友们好,下面是我的代码

html

 <ul>
    <li>
    <div class="input"><input name="" type="checkbox" value="" id="a"/></div>
    <div >Name of the survey goes here | 35 Points - <span>Begin Survey</span></div> 
    </li>
</ul>

jQuery

<script>
$(document).ready(function()

    $('#a').click(function()

    $(this).next('div').addClass('.check_clicked');

    )
)
</script>

CSS

.check_clicked

    text-decoration:line-through;
    color:#b6a7a7;

我只是想如果复选框值被选中,那么 .check_clicked 类应该应用于下一个 div

【问题讨论】:

【参考方案1】:

.next() 访问下一个兄弟。但是,您的 #a 元素没有。

你想要的是$(this).parent().next()

您还需要删除类名中的. - addClass() 只接受类,因此它不需要在类名前添加.

这是一个工作演示:http://jsfiddle.net/DqLRc/ 如果取消选中该复选框不应再次删除该类,只需将 addClass 保留在我的 toggleClass 调用中即可。

【讨论】:

太好了——请不要忘记在 15 分钟的延迟结束后接受答案。

以上是关于.next() 和 .addClass() 在 jquery 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

数据结构KMP算法求Next[j]。设模式串pat='ABAAACDABAAACDA',求pat的Next[j]

kmp算法专题总结

KMP

KMP之计算Next数组

kmp算法next(j)怎么算出来的?

导航栏切换