gpt4 book ai didi

jquery - CSS 多重选择器(交叉点)不工作

转载 作者:太空宇宙 更新时间:2023-11-03 20:39:36 24 4
gpt4 key购买 nike

我正在尝试使用 jquery 来切换某些类的显示属性(打开和关闭)。

我正在尝试在图像和下面的文本之间切换,以在点击时切换

<div class="fab red off">
<img class="community_service_icon" src="http://placehold.it/50x50">
<div class="community_service_text">
Charity Run<br/>
Charity Sale<br/>
Bake Sale<br/>
Photo Exhibition<br/>
</div>
</div>

这是我的 jquery 函数:

jQuery(function($) {
$('.fab.red.off').click(function() {
$(this).removeClass( 'off' ).addClass( 'on' );
$(this).children( '.community_service_icon' ).css('display', 'none');
$(this).children( '.community_service_text' ).css('display', 'block');
});
});

jQuery(function($) {
$('.fab.red.on').click(function() {
$(this).removeClass( 'on' );
$(this).addClass( 'off' );
$(this).children( '.community_service_icon' ).css('display', 'block');
$(this).children( '.community_service_text' ).css('display', 'none');
});
});

第一次点击成功隐藏图像并显示文本,它还将类更改为“fab red on”。但是,当我再次单击 fab div 时,它似乎使用选择器“.fab.red.off”运行第一个函数,而另一个函数未被触发。

有什么想法吗?也非常感谢任何优化此代码的建议。

干杯

最佳答案

您可以使用 .toggle() 简化您的代码, 如果元素可见则隐藏该元素,如果不可见则显示。

jQuery(function($) {
$('.fab.red').click(function() {
$(this).find('.community_service_icon').toggle();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="fab red">
<img class="community_service_icon" src="http://placehold.it/50x50">
<div class="community_service_text">
Charity Run
<br/>Charity Sale
<br/>Bake Sale
<br/>Photo Exhibition
<br/>
</div>
</div>

关于jquery - CSS 多重选择器(交叉点)不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27775186/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com