如何通过jQuery点击另一个元素来改变元素的类
How to change the class of an element by clicking on another element with jQuery
如何改变一个HTML元素(X:element)的class
,当我点击<a>
,当我点击其他元素(div,body,li),这个元素(X:element)的类改变下面是示例:
<a class='A'></a>
<div class='click'></div>
当我点击a
addClass
(B)
当我点击其他元素removeClass
:(B)
试试下面的代码:
$(document).ready(function(){
var aTag = $("a.A");
var divTarget = $("div.click");
$(document).click(function(e){
var target = $(e.target);
if(target.is(aTag)){
if(divTarget.hasClass("B"))
divTarget.removeClass("B");
else
divTarget.addClass("B");
}
else if(!target.is(divTarget))
{
$(divTarget).removeClass("B");
}
});
})
.B{
color: blue}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<a class='A'>Link A</a>
<div class='click'>Click Div</div>
<div class='click1'>Click Div 1</div>
<div class='click2'>Click Div 2</div>
如果我没理解错的话,你是这样说的:
$(document).on('click',function(){
$('.A').removeClass('B');
});
$('.A').on('click',function(e){
$('.A').addClass('B');
e.stopImmediatePropagation();
return false;
});
假设我理解你的问题,我添加类B到。click如果你点击A,点击其他地方,我删除它
$(function() {
$(document).on("click", function(event) {
var $tgt = $(event.target);
$(".click").toggleClass("B", $tgt.hasClass('A'))
});
});
.B { color:red }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a class='A'>Click here</a>
<div class='click'>Text</div>
如果我没理解错的话,这应该行得通…
$('.a').on('click', function(){
$(this).addClass('B');
});
$('.click').on('click', function(){
$('.a').removeClass('B');
});
点击'a'标签将添加class B到'div', class 点击 。
当'div'与类click被点击时,类B被删除。
$(document).ready(function() {
$(".A").on("click", function() {
$(".click").addClass("B");
return false; // prevents the page from being reloaded
});
$(document).on("click", function() {
if(!$(this).hasClass('click')) {
$(".click").removeClass("B");
}
return false;
});
});
相关文章:
- innerHTML赢得't改变元素
- 可以't改变'name'元素的属性
- 为什么当我分配给element.style时,我的元素的样式没有改变
- 这是关于Jquery/JS的,如果我改变元素's HTML-我可以对它执行其他Jquery/JS操作吗
- 为什么硒会改变元素's href
- 有些元素没有被改变,即使它们应该被改变
- 从中删除元素后,javascript 数组的长度不会改变
- 如何使JQuery同位素与改变高度的元素一起工作
- javascript悬停在一个元素上会改变另一个元素
- 为什么我的
- 元素上的颜色属性没有改变我的 .hover() 事件处理程序
- 函数不能计算分数和改变页面元素的值
- 我希望我的操作改变它所附加的DOM元素
- Jquery在多个元素改变前调用函数
- 在图像元素改变了src之后,计时函数的运行时间
- 防止firefox在溢出元素改变时重置滚动条位置
- HTML范围元素改变CSS过滤器
- Knockout.js |可观察数组只在最后一个元素改变时触发
- jQuery自定义验证器方法在元素改变时被调用
- jQuery用子元素改变变量
- Div元素改变位置后的效果