Я пытаюсь добавить некоторые стили CSS для текста div, когда я нажал кнопку в другом div
вот мой html-код
<div class="row" id="target">
<h2>{{txt}} </h2>
</div>
<div class="row">
<button my-dir>Click Me</button>
</div>
мой код js
.directive('myDir', function () {
return {
restrict: 'A',
link: function (scope, elem, attr) {
console.log(elem);
elem.bind('click', function (e) {
console.log("coming");
elem.find('#target').css({
backgroundColor: 'red'
})
// angular.element(e.target).siblings('#target').addClass('clr');
});
}
}
});
моя проблема в том, что когда я нажал кнопку в одном стиле div css, нужно применить для другого div с помощью директивы, я попробовал что-то вроде выше, но не работал.
заранее спасибо
elem
будет ссылаться на button
. Итак, elem.find('#target')
будет искать #target
внутри elem
Вы можете сделать это
elem.bind('click', function (e) {
$('body').find('#target').css({
backgroundColor: 'red'
})
});
если ваш идентификатор элемента уникален и не изменен, вы можете упростить его, как показано ниже
elem.bind('click', function () {
$('#target').css('backgroundColor','red');
});
elem.find найдет все div с id, содержащим "target", попробуйте использовать уникальный идентификатор для всех изменений div. Это поможет вам.