首页 > 解决方案 > 我想在单击元素时切换它

问题描述

我正在测试一些东西,我想<div id="moreinfo">asddsa</div>在单击一个元素时显示出来,我禁用了事件.preventDefault()但仍然无法在这里工作是代码也是 css 显示#cont1 #moreinfo { display:none; }

$(document).ready(function() {
$('#main').on('click', '.ppp', function(event){
                event.preventDefault();
                $('this').closest('#main').find('#moreinfo').toggle('fast');
            })
})
<div id="main">
             <div id="cont1">
                 <h1>Basic</h1>
                 <p>Buy <span>Basic</span> packet and get:</p> <p>300 Minutes Talk</p><p>500 SMS</p><p>5GB NET<a href="google.com" class="ppp"> More info</a><div id="moreinfo">asddsa</div></p>
                 <button>Buy Now !</button>

             </div>

标签: jqueryhtml

解决方案


我认为你输入错误$('this')的功能,你会尝试这个修复

$(this).closest('#main').find('#moreinfo').toggle('fast');

为了更好的优化试试这个

$(document).ready(function() {
  $('.ppp').click(function(){
    event.preventDefault();
    $('#moreinfo').toggle();
  })
})

是的,您需要Linkevent.preventDefault();('#moreinfo')不是 DIV,因此它具有默认行为。


推荐阅读