首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >附加到共享同一个类的一个元素的jQuery事件

附加到共享同一个类的一个元素的jQuery事件
EN

Stack Overflow用户
提问于 2015-11-03 17:04:38
回答 2查看 59关注 0票数 1

我试图找到一种将事件附加到DOM的特定元素的好方法。该元素与其他元素共享相同的类(实际情况:通过循环遍历DB生成20个div)。

为了使它尽可能简单,我在这里创建了一个可用的JSfiddle:jsfiddle.net/1a27t3u4/

事件很简单,只是向特定的div添加了一个类:

代码语言:javascript
运行
复制
$('.bouton').click( function(){
  $('.mother').addClass('red');
});
代码语言:javascript
运行
复制
.mother
{
	width: 400px;
	height: 100px;
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
	border: 2px solid red;
	text-align: center;
}

.red
{
     background: red;   
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
HTML:
    

    <div class="mother">
    	<button class="bouton"> Click me! </button>
    </div> 
    <div class="mother">
    	<button class="bouton"> Click me! </button>
    </div> 
    <div class="mother">
    	<button class="bouton"> Click me! </button>
    </div> 
    <div class="mother">
    	<button class="bouton"> Click me! </button>
    </div> 
    <div class="mother">
    	<button class="bouton"> Click me! </button>
    </div>

基本上,我想知道的是如何通过使用类标记而不是id标记来给包含我单击的按钮的div颜色,而不是所有div。

我尝试在脚本的末尾添加stopPropagation()return false,但没有成功:

EN

Stack Overflow用户

发布于 2015-11-03 17:07:47

使用jquery .closest()函数:

代码语言:javascript
运行
复制
$('.bouton').click( function(){
    $(this).closest('.mother').addClass('red');
});

这将搜索DOM并找到与给定选择器匹配的最接近的元素。见工作小提琴:http://jsfiddle.net/1a27t3u4/3/

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33505029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档