我有一個非常簡單的JS代碼,它只做了一件事,即在頁面上的特定元素上切換一個open
類。問題是,我有4個重復的.clickSlide
元素和.sub_menu
元素,當我點擊其中一個元素觸發(fā)代碼時,所有元素都會得到open
類。只有其中一個關注的元素應該得到open
類。
我最好的猜測是在JS中缺少某種this
。但我對這個問題的解決方案持開放態(tài)度!
jQuery(document).ready(function($) { $(".clickSlide").click(function() { $(".sub_menu").toggleClass("open"); }); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="ht_course_one"> <ul class="select-menu dropdown"> <li class="clickSlide"> <ul class="sub_menu"> <li></li> </ul> </li> </ul> </div> <div class="ht_course_two"> <ul class="select-menu"> <li class="clickSlide"> <ul class="sub_menu"> <li></li> </ul> </li> </ul> </div> <div class="ht_course_three"> <ul class="select-menu"> <li class="clickSlide"> <ul class="sub_menu"> <li></li> </ul> </li> </ul> </div> <div class="ht_course_four"> <ul class="select-menu"> <li class="clickSlide"> <ul class="sub_menu"> <li></li> </ul> </li> </ul> </div>
所以解決方案(基于Anass Kartit的回答)是這樣的:
jQuery(document).ready(function($) { $(".clickSlide").click(function(){ $(this).children(".sub_menu").toggleClass("open"); }); });
Copyright 2014-2025 http://www.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號