Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Можно ли привязать условие к цвету блока? (https://javascript.ru/forum/misc/73133-mozhno-li-privyazat-uslovie-k-cvetu-bloka.html)

Artur_Hopf 23.03.2018 15:14

Можно ли привязать условие к цвету блока?
 
Добрый день. У меня есть два блока:
<div Id="div_1"></div>
<div Id="div_2"></div>

По клику на них происходит событие изменение цвета border:
$('#div_1').click(function(){
    $("#div_1").css({ "border": "2px solid #b7ea79"});
    $("#div_2").css({ "border": "2px solid white"});
});

$('#div_2').click(function(){
    $("#div_2").css({ "border": "2px solid #b7ea79"});
    $("#div_1").css({ "border": "2px solid white"});
});


Вопрос, можно ли привязать условие к цвету border? Например написать:
if(цвет равен нужному ) {
     console log("выбран этот блок");
}

ksa 23.03.2018 15:17

Цитата:

Сообщение от Artur_Hopf
можно ли привязать условие к цвету border?

Можно.
Но лучше таки использовать некий класс, в нем определить цвета и проверять именно наличие класса. ;)

Artur_Hopf 23.03.2018 15:24

ksa,
Можно пример, до меня так быстрее дойдет, что то вроде:
var a;
var b;
$('#div_1').click(function(){
    $("#div_1").css({ "border": "2px solid #b7ea79"});
    $("#div_2").css({ "border": "2px solid white"});
    var a = 1;
    var b = 2;
});

$('#div_2').click(function(){
    $("#div_2").css({ "border": "2px solid #b7ea79"});
    $("#div_1").css({ "border": "2px solid white"});
    var b = 1;
    var a = 2;
});

if(a == 1) {
    всяко разно...
}

ksa 23.03.2018 15:38

Цитата:

Сообщение от Artur_Hopf
Можно пример

Вот...
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='https://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
#div_1 {
	border: 2px solid white;
}
#div_2 {
	border: 2px solid #b7ea79;
}
#div_1.on {
	border-color: #b7ea79;
}
#div_1.on + #div_2 {
	border-color: white;
}
</style>
<script type='text/javascript'>
$(function (){
	$('#div_1').click(function(){
		$("#div_1").addClass('on');
	});
	$('#div_2').click(function(){
		$("#div_1").removeClass('on');
	});
	$('button').click(function(){
		alert($("#div_1").hasClass('on'));
	});
});
</script>
</head>
<body>
<div id="div_1">div_1</div>
<div id="div_2">div_2</div>
<button>Test</button>
</body>
</html>


Часовой пояс GMT +3, время: 15:20.