У меня есть функция, которая по клику мыши выделяет элемент (добавляет класс selected).
$('#myTable tbody').on('click', 'tr', function () {
$(this).toggleClass('selected');
});
Вопрос: Как делать тоже самое, но только при зажатой клавише Ctrl?
Используйте для этого Event.ctrlKey.
Это свойство возвращает true, если клавиша Ctrl нажата во время события, и false - если не нажата.
$('#myTable tbody').on('click', 'tr', function(e) {
if (e.ctrlKey) {
$(this).toggleClass('selected');
}
});
.selected {
background: #f00;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="myTable">
<tbody>
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
</tr>
</tbody>
</table>
Продвижение своими сайтами как стратегия роста и независимости