【发布时间】:2020-05-16 10:12:24
【问题描述】:
试图找到一个包含“launch-overlay-”的属性,所以即使前后有其他类,脚本仍然可以工作。找到后,将“活动”类添加到匹配号 div。到目前为止,这是我所拥有的,但是如果“启动覆盖-”周围还有其他课程,它将无法正常工作。 >
$('div[class*="overlay-"]').click(function(){
var overlaynum = $(this).attr('class').match(/\d+$/)[0];
$('.overlay-container-'+overlaynum).addClass('-active');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class=“other-class overlay-1”>click me</div>
<div class=“other-class overlay-2”>click me</div>
<div class=“overlay-container-1”></div>
<div class=“overlay-container-2”></div>
【问题讨论】:
-
不存在带有
launch-类前缀的元素 -
使用数据属性会更有意义
-
不要在 HTML 属性中使用大引号。使用
'或" -
在编辑代码时,请确保关闭“智能引号”。