所以,我有一个问题。在我的一个项目中,我想在单击标题时为面板包括slideToggle函数。我基本上想要这个。
https://jsfiddle.net/abrch86f/
问题是,当我单击标题(h3)时,什么也没有发生,并且要进行检查,我还在单击功能中添加了警报消息。我基本上是在寻找会导致这种情况的常见错误。jQuery是明确加载的,我总是在文档加载时使用警告消息进行检查。这是我的代码
jQuery查询
$('h3').click(function(){
alert("It works!");
$('.content').slideToggle();
});
的HTML
<div id="left-panel">
<h3>Hire Soldiers</h3>
<div class="content">
<button onClick="hireSwordsman()">Swordsman - Cost 70 Ore</button>
<button onClick="hireVanguard()">Vanguard - Cost 90 Ore</button>
<button onClick="hireBowman()">Bowman - Cost 125 Ore</button>
<button onClick="hireKnight()">Knight - Cost 200 Ore</button>
</div>
</div>
我之所以将左面板div包括在内,是因为我不确定z-index是否与此有关,但是我有预感。显示可能有问题吗?我不知道为什么会这样,因为我根本没有更改它。再次强调,我只是在寻找会导致其无法正常工作的东西。如果您认为可以直接帮助我并且需要更多信息,请询问。
谢谢!
我的问题是我要定位的h3被另一个div覆盖了。感谢@josephting的解释,我需要将z-index调整得更高,如下所示:
h3 {
z-index: 2;
}
检查您的元素是否被其他内容阻止的一个好方法是使用@junkfoodjunkie解释的此功能,该功能将您单击的元素打印到控制台日志中。
$(document).click(function(e){ console.log(e.target); });
因此,通过将该声明添加到我的CSS中,解决了我的问题。请记住,如果以前使用过较高的z-index值,则可能必须根据前面的标题来提高它们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句