为了账号安全,请及时绑定邮箱和手机立即绑定

想要点击两次 然后出现不同效果,请问使用jquery该怎么实现!

想要点击两次 然后出现不同效果,请问使用jquery该怎么实现!

慕村225694 2021-06-14 15:11:29
============= jq代码 =========$('#myid span').click(function(){if($(this).hasClass("myoff")){$(this).attr('class','myon');}if($(this).hasClass("myon")){$(this).attr('class','myoff');}});============= html 代码 =========<div id="myid"><span class="myoff">内容1</span><span class="myoff">内容2</span> <span class="myoff">内容3</span> </div>点击span的时候,判断class名字,如果全等于myoff,则改成myon。 如果全等于myon,则改成myoff。
查看完整描述

2 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

很简单的,只用一句代码就能实现:

123$("#myid span").on("click",function(){    $(this).toggleClass("myon");//如果默认显示的是myoff,这里就是myon})

原理分析:

span 默认显示的是myoff这个样式,那么当第一次点击的时候,toggleClass就会判断是否包含myon这个样式,如果不包含,就为它添加上“myon”这个样式,这样span的样式就变成了:“<span class='myoff myon'>”,myon和myoff里有冲突的样式,就会显示myon的样式,当再次点击的时候,就会删除myon这个样式。


查看完整回答
反对 回复 2021-06-20
?
婷婷同学_

TA贡献1844条经验 获得超8个赞

$ (function ()
{
$ ('#myid span').click (function ()
{
if ($ (this).attr ("class") == "myon")
{
$ (this).attr ('class', 'myoff');
}
else if ($ (this).attr ("class") == "myoff")
{
$ (this).attr ('class', 'myon');
}
});
});



查看完整回答
反对 回复 2021-06-20
  • 2 回答
  • 0 关注
  • 397 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信