Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как достучаться до свойства объекта Javascript из его же функции при запуске её через EventListener или зачем this === e.target?

Лучший ответ:
нужно запускать функцию через событие, а в этом случае this === e.target
Категорически нет. При использовании addEventListener this ссылается на узел, в котором зарегистрирован обработчик.
Например, регистрируем так:document.addEventListener('click', function (e) {
	console.log(e.target); // Где кликнули
	console.log(this); // Всегда document
}, false);
Как привязать объект активации (он же this) к строго определённому объекту (и даже не HTML-элементу)? Вам стоит почитать про bind (а также call и apply).
Итого примерно так:document.addEventListener('click', deepThought.alertAnswer.bind(deepThought), false);

Худший ответ:
Извините за флуд, но решение нашёл сам :)document.getElementById("button").addEventListener('click', function (e) {deepThought.alertAnswer();});
А если EventListener нужно добавить внутри другой функции объекта deepThought, то оно должно выглядеть так:var deepThought = {
    ...
    onLoad: function () {
        var a = this;
        document.getElementById("button").addEventListener('click', function (e) {a.alertAnswer();});
    }
}
Вопрос: Как сделать так, чтобы событие mouseout игнорировалось?

Лучший ответ:
Все верно, чтобы избежать этой ситуации, используйте mouseenter и mouseleave, либо hover.

Худший ответ:
Проверяйте код и верстку, если все сверстано и написано верно, то и работать будет так, как вы ожидаете. Вот вам фиддл jsfiddle.net/AMar4enko/eA2qU
В следующий раз прикладывайте максимум информации, в идеале фиддл со сниппетом, который не работает - тут не собрание Кашпировских, по фотографии не лечат.
Вопрос: Кастомная кнопка «Назад» в iOS?

Лучший ответ:
как понимаю, это просто иконка, которую поместили на картинку и заблокировали там же, чтобы при скроле она оставалась на месте или это прозрачный Navigation Bar???
не факт. не заблокирует ли Apple приложение за такую кнопку, ведь чтобы вернуться назад придется обязательно скроллить вверх?
не заблокируют. И скролить не полностью вверх. Ведь можно сделать что при например 30 пикселях скрола кнопна выежала назад. Пример тому приложение ВК когда листаете навбар улетает но стои немного вернуться как он сразу на месте.
Несколько полезных репо по теме раз,  два.

Худший ответ:
Добрый день. 
Если я правильно понял, то решение присутствует в iOS9 back to "application name"
Например открыв ссылку в wats'up в safari, сверху слева будет надпись back to wats'up
Вопрос: Как вызвать возвращенное функцией значение?

Лучший ответ:
вы возвращаете в пустоту:firstarray = getsomething1()
secondarray = getsomething2()
getsomething3(firstarray, secondarray)илиgetsomething3(getsomething1(), getsomething2())

Худший ответ:
firstarray в первой функции нужно объявить явно, хотя бы в теле, необязательно в параметтре
Вопрос: &quot;Проводник&quot; для телефона?

Лучший ответ:
ES File Explorer play.google.com/store/apps/details?id=com.estrongs.android.pop&hl=en
Простой в работе, но умеет практически все то, что вы перечислили в требованиях к нему.

Худший ответ:
Для себя выбрал уж больше года назад ASTRO
Причем спустя месяц перешел на платную версию (стоит 100 рублей с копейкой).
Вопрос: Как правильно писать запросы для поиска по базе (MySQL) и не ронять сервер?

Лучший ответ:
Почитайте про реляционные базы вообще и про третью нормальную форму в частности.
Не нужно хранить жанр музыки строкой для каждой композиции.
Заводим отдельную табличку genre
---
genre_id
genre_title
Заводим табличку для указания соответствийxref_music_genre
---
music_id
genre_id
Все.UPDЕсли человек вводит запрос вида: "trance and house", то как правильно делать в таком случае выборку, чтобы в результате были выведены все треки, в жанрах которых встречаются слова из этого запроса? В данном случае должны вывестись все треки из жанра house и trance.select music_id 
from xref_music_genre 
where genre_id IN (5,7) 
group by music_id 
HAVING count(genre_id)=2

Худший ответ:
С изначальным вопрос я все понял, всем спасибо! 
Теперь еще вопрос:
Если человек вводит запрос вида: "trance and house", то как правильно делать в таком случае выборку, чтобы в результате были выведены все треки, в жанрах которых встречаются слова из этого запроса? В данном случае должны вывестись все треки из жанра house и trance.$result = mysql_query("SELECT * FROM xref_music WHERE genre_id = 7 OR genre_id = 5");
Цифры 7 и 5 - это соответственно id жанров trance и house.
Т.е. я беру строку trance and house, разбиваю ее по словам. А дальше? Как-нибудь убрать из нее все лишнее (and) и оставить только существующие жанры (house, trance)?
Потом загнать каждый жанр по отдельности в запрос как я показал в своем примере? Это по феншую будет?
Вопрос: Как получить информацию о моделях Rails?

Лучший ответ:
В отдельной вкладке откройте файл /db/schema.rb

Худший ответ:
Еще можно использовать гем Annotate
Вопрос: Какой язык подходит для начинающих?

Лучший ответ:
Python берите для начала. А вообще выбор языка должен исходить из поставленной задачи.

Худший ответ:
Pascal, специально был разработан для обучения. Изучите основы, а дальше уже определяйтесь с языком, технологиями и направлением.
Вопрос: Сделать из мануального объектива автофокусный, реально?

Лучший ответ:
Мысли… а зачем? Лучше чем брэндовый все равно не получится на коленке — все-таки там точная механика, да и мануальные изначально на кручение моторчиком не задуманы — получится просто изврат ИМХО.

Ну а чтоб просто он сигнал автофокуса давал — тут про одуванчик уже сказали.

Худший ответ:
Порой заводские объективы не могут попасть в фокус, и это с ультразвуковыми моторами и прочими примочками, а тут речь о самопальном. Хочется поиграться — лепи контроллер, (но только на Ардуино))), одуванчик, редуктор, сервопривод (хотя думаю и обычный моторчик может подойти) и рассказывай о том, что получилось!
Вопрос: Как лучше изменять php-файлы на рабочем проекте?

Лучший ответ:
Когда заливаете через CMS, файл по сути заливается во временный файл, а затем происходит move, который, в случае, если временный файл и целевой находятся на одном разделе файловой системы является атомарным (т.е. либо в один момент времени это старый файл, либо новый), либо, если происходит move между разделами - все равно происходит очень быстро.
В случае, когда вы заливаете по ftp - сначала удаляется старый файл, т.е. он становится недоступным, а затем уже начинает подливаться новый. В этот момент и происходит "лажа".
Выходов несколько:
- про первый (не сказал бы, что он очень простой, но все равно довольно эффективный), вам уже написал D' Normalization во втором пункте.
- второй - разливать файлы не по фтп, а, допустим, с помощью rsync из некоей директории, куда вы уже заливаете по ftp. То бишь - залили, проверили, что ничего больше заливать не надо - запустили на сервере rsync из этой директории в продакшн. rsync также копирует различающиеся файлы сначала во временный файл, а затем "мувит" на постоянное место.
- третий - может быть с косяками, использовать, например, opcache в PHP и выставить в параметрах opcache не трогать файл, пока он не состарится, например, на несколько секунд. Секунды определяются эмпирически, в зависимости от скорости вашей заливки. 
- четвертый... а фиг знает, придумать можно много всего. Например, хранить файлы в SVN или GIT-репозитории, и по commit/push запускать post-hook, который, например, будет синхронизировать файлы тем же rsync или использовать какой-нибудь Jenkins... масса вариантов, главное не трогать самому файлы продакшна.

Худший ответ:
пользователь такого даже не заметит, если конечно у вас файл размером не несколько гигов. Если так - заливайте когда никого нет, и не выводите ошибки на сайте, а пишите их в логи. Пользователь вообще не должен подозревать что сайт может выдавать ошибки.
Если уж совсем необходимо - повесьте табличку "сайт на обслуживании", залейте все нужное и уберите табличку и не делайте проблем на пустом месте
Вопрос: Из каких комплектующих лучше всего собрать PC для работы с Aobe Photoshop?

Лучший ответ:
Комфортная конфигурация для фотошоп-
Процессор от  core i5
Память от 8Гб
Диск - SSD. На нем обязательно должен располагаться профиль пользователя, файл подкачки ОС, файл подкачки фотошопа, и желательно данные с которыми работаете в данный момент.
Если это ноутбук, то процессор соответственно от core i7.
Видеокарта роли не играет, по крайней мере на такой конфигурации.

Худший ответ:
если нет желания переплачивать за новые платформы(1150,1151),не дающих никаких "революционных" сдвигов,можете,на сайтах б.у.комплектующих(хотя бы, au.ru  либо  avito.ru) собрать или купть по отдельности железо сокета 1155: процессор i7-2600(I5-2500,хуже)+матплата от "гига" или "асус",""асрок" сок.1155+видеоадаптер,ну хотя бы-Radeon HD 6970(при наличии наличности-хоть R9-380!),память:здесь,скромность ни к чему,8гб,еще лучше-16гб DDRIII (новая,DDRIV,какую пришлось бы брать для новой конфигурации,пока не попала в ряд "волшебных средств",драйва от нее,пока не заметил ни один из "тестеров").Диск,конечно,лучше-SSD,минимум на 120гб.Модель-по средствам.Для ADPhotoShop-вполне достаточно,даже с захватом последующих версий.Конфигурация,что приведена выше,установлена на второй,резервный ПК и постепеннно стала основной,для работы именно с APS.Использовать более мощный,второй ПК,предназначенный для работы с видеомонтажем и 3D стренсерами,надобность отпала.
Вопрос: Как сделать чтобы было все плотно по высоте?

Лучший ответ:
mosaicflowshapeshiftпример с masonry
Если без js, то <div class="container">
  <img src="" alt="">
  <img src="" alt="">
  <img src="" alt="">
  ...
</div>.container {
  column-count: N;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}

.container img {
  display: inline-block;
  width: 100%, 
}
column-gap - расстояние между колонками
Для правильного порядка в колонках формируем примерно такой выводfor (var i = 0; i < N; i++) {
    for (var j = i; j < images.length; j+=N) {
      <img src="images[j].src"
, где N - количество колонок.
Еще есть возможность создать подобное используя flexboxРазДваТри
Но там не так всё хорошо иногда получается, как задумывается. Хотя у любого способа есть свои недостатки. Так что пробуйте разные варианты, может что-то и будет золотой серединой.

Худший ответ:
Вариант без js - делаете 3 одинаковые колонки, складываете в них дивы.
Вариант с js - берете masonry, izotope, blocksit, whatever и go code.
Вопрос: Какие существуют платформы для размещения платных онлайн курсов?

Лучший ответ:
Ну искать по слову LMS
всякие там moodle интеграции kaltura и прочее.

Худший ответ:
я нашёл www.edmodo.com/
Вопрос: Как деплоить проект на серер по git pull?

Лучший ответ:
Я бы порекомендовал внешнюю систему деплоя, например github.com/capistrano/capistrano

Вот мой конфиг для проекта на symfony2:

set :application, "appname"
set :deploy_to, "/var/www/#{application}"

set :repository, "git@github.com:vslinko/#{application}.git"
set :scm, :git

set :shared_files, ["app/config/parameters.yml"]
set :shared_children, ["app/logs", "web/uploads", "vendor"]
set :asset_children, []

set :user, "www-data"
set :use_composer, true
set :update_vendors, false

set :domain, "symfony.slinko.me"
role :app, domain

task :production do
  set :domain, "appname.com"
  role :app, domain
end


После чего cap deploy на тестовый сервер, а cap production deploy на рабочий

Худший ответ:
В mercurial есть hook update=…
Вопрос: Как отобразить таблицу из json на веб странице без php?

Лучший ответ:
1. Получить данные можно например так: jQuery Cross-Domain AJAX Request methods
2. После получения данных вам понадобиться шаблонизатор, например этот: Handlebars.js
3. Profit!

Худший ответ:
Можно попользовать https://github.com/jongha/jquery-jsontotable, например.
Вопрос: Virtualbox и физические жёсткие диски

Лучший ответ:
Можно. Посмотрите главу 9.7. Advanced storage configuration мануала.

Худший ответ:
Я так понял, что если у меня один жесткий диск и на нем 2 операционные системы, то настраивается по главе 9.7.1.2 Access to individual physical hard disk partitions, но какой ключ использовать -partitions?
Вопрос: Можете посоветовать книгу по верстке, где рассматриваются принципы позиционирования и расположения элементов?

Лучший ответ:
Возможно в этой книге что-то найдешь Веб-дизайн: книга Стива Круга
или «не заставляйте меня думать!»
СПб: Символ-Плюс, 2005. 

Худший ответ:
HTML5 и CSS3. Разработка сайтов для любых браузеров и устройств — Бен Фрейн
Большая книга CSS3. Дэвид Макфарланд
и очень помогает наглядный пример — исследовать сайты с помощью инспектора типа firebug.
Вопрос: Сколько будет стоить движок для форума?

Лучший ответ:
Пожалуйста, не пишите больше движков для форума! Их уже миллион. Возьмите готовый из популярных. 
Спасибо

Худший ответ:
несколько денег :)
Вопрос: Какие есть open source проекты для джуниоров?

Лучший ответ:
Выбирайте на свой вкус https://github.com/trending?l=java https://github.com/trending?l=python

Худший ответ:
Будет здорово, если кто-нибудь поделится личным опытом. Я же могу подсказать список проектов Google Summer of Code: https://www.google-melange.com/gsoc/org/list/publi...
Организации можно искать по ключевым словам в колонке справа (например, ввести "python"). На странице каждой организации есть ссылка на "Ideas page", где есть идеи для летних проектов, рассчитанных на студентов. Часто указывается сложность проекта. Скорее всего, эти идеи быстро разберут, но само их наличие может подсказать, в каких проектах способен разобраться и новичок.
Вопрос: Большая удобная мышь

Лучший ответ:
Конечно не очень подходит (пункты 8 и 9), но ИМХО одна из самых лучших мышей — Logitech Performance Mouse MX.

Худший ответ:
Могу дать отзыв про Logitech M705 — мышь не большая, ложный двойной клик появился примерно через год использования. И ещё — она как-то рывками работает, мало плавности, ИМХО. Сейчас как раз жду ответа из Logitech, обменяют ли мне её. А вот до этого была у меня мышь Logitech MX 620 — вот она была действительно и большая, и удобная. И жила больше года на одной батарейка. Но, похоже, подобную сейчас не найти, по крайней мере за умеренную плату.
Вопрос: Как освоить Composer?

Лучший ответ:
Обзор на русском можно посмотреть здесь . Дальше читайте и переводите документацию на официальном сайте, там всего несколько основных команд. 
А важность этого инструмента определяется вашими задачами: если вы пишите плагины под wordpress или настраиваете bitrix, знать его необязательно, а если используете современные фреймворки и open source библиотеки, то без него никуда.

Худший ответ:
Достаточно важен, это очень удобный способ управления пакетами для PHP, чтобы освоить нужно начать просто его использовать в своих проектах.
Вопрос: Возможно ли заработать на еще одной новой CMS?

Лучший ответ:
Мне кажется, не окупится.

Худший ответ:
Если она будет чем-то выгодно отличаться от существующих, то вполне.
Вопрос: Какую книгу почитать по PostgreSQL?

Лучший ответ:
— www.postgresql.org/docs/books — теми, что для версии 9+ можно спокойно обзаводиться и читать. Акцентирую внимание на "PostgreSQL Server Programming", "PostgreSQL: Up and Running" и "PostgreSQL 9 Administration Cookbook".
— postgresql.leopard.in.ua — довольно хорошая книга в свободном доступе, больше про админство, но по своему опыту скажу, что разработка и администрирование PostgresQL очень тесно связаны.

Худший ответ:
PostgreSQL. Для профессионалов  ->>>http://progbook.ru/
  и ещё на рутрекере  ->>> все про postgresqllynda.com | PostgreSQL 9 with PHP Essential Traini...
и тут
Вопрос: Как удалить старые письма Postfix+Dovecot / CentOS6?

Лучший ответ:
find /mail/dir -type f -mtime +1095 -delete
/mail/dir каталог с письмами 
-mtime +1095 старше 1095 дней
-delete удалить 
предварительно проверить список файлов на удаление примерно такfind /mail/dir -type f -mtime +1095 -print

Худший ответ:
На дату по всем ящикамdoveadm expunge -A mailbox Inbox BEFORE 2018-12-01
По сроку (старше 12 недель) для юзера info@example.comdoveadm expunge -u info@example.com mailbox Inbox BEFORE 12w
Другие варианты: https://wiki.dovecot.org/Tools/Doveadm/SearchQuery
Вопрос: Можно ли репостить на хабр статьи из своего блога?

Лучший ответ:
Нет. habrahabr.ru/info/help/rules/

Худший ответ:
Со времён ответа MiXei4 прошло 3 года и что-то поменялось. По ссылке на правила (https://habr.com/ru/docs/help/rules/):
Не следует копировать на «Хабр» тексты, опубликованные другими людьми на других ресурсах, но можно копировать собственные тексты, если они не нарушают правила ресурса.
Вопрос: Logitech K800

Лучший ответ:
Вот так она выглядит у меня.
Должен заметить, что Illuminated Keyboard (та что с проводом) выглядела круче.

Худший ответ:
Русской версии, судя по всему, еще не существует в природе. Но судя по тому что проводную версию изуродовали это самой «UK-раскладкой», с этой будет та же история. А жаль, US-версия просто конфетка.
Вопрос: Один localStorage на все поддомены. Нельзя, но может всё-таки можно?

Лучший ответ:
Можно использовать 1 извращенный способ.
Использовать postMssage, который будет транслировать запросы localStorage на специальной странице, аля localStorage.example.com :) 

Кстати, можно поиграться с попытками достучаться на прямую к localStorage ifram'a ведь, домен 2рого уровня страниц будет одинаковый. Не помню, просто, пзволят ли политики безопасности.

Худший ответ:
globalStorage, если бы он поддерживался хромом :(
Вопрос: Как после ajax post запроса и записи данных в базу, сделать редирект к этой записи?

Лучший ответ:
Если страница создана, то кидайте ссылку на нее в success, а там простоwindow.location.href = "http://www.bl.ls/items/item/7";

Худший ответ:
Можно возвращать айди нового элемента и сконфигурировать урл, потом 
window.location.redirect = URL;
P.s. 
Если будете возвращать, то лучше json, ибо можно еще организовать какие нибудь нотификации.
Вопрос: С чего начать разработку адаптивного сайта?

Лучший ответ:
Когда все решите, то имейте в виду, что лучший помощник, для создания адаптивной верстки — Firefox:

Худший ответ:
Если сроки сжатые - почему бы не использовать bootstrap? Там уже встроена поддержка верстки под разные устройства.
Вопрос: Что произошло с ЖК экраном: выгорели пиксели или что?

Лучший ответ:
Похоже на деградацию светофильтров ЖК дисплея со временем от постоянного воздействия светового потока.

Худший ответ:
Может это баг ОС? Проверьте в другой системе.
Вопрос: Blender + Unity или UE. Что перспективней и легче в изучении?

Лучший ответ:
Нет какого-то идеального решения. Unity - проще в освоении, UE - считается лучше в качестве рендера. 
Я, например, в свое время выбрал Unity и не жалею.
Что же касается Blender, то обратите внимание на плагин Blend4Web (именно плагин, а не SDK). Это наиболее простое способ для показа своих моделей, сделанных в Blender на сайте или заказчику.

Худший ответ:
а блендер это 3д моделинг. к юнити отношения не имеет никакого. его и с анрилом можно юзать запросто.
по делу: у юньки порог вхождения низкий, оптимизация под мобилки хорошая (ну если понимать чо делаешь). анрил - больше для пк и консолек все таки (и графонистее поэтому же)
а blend4web это не кроссплатформа.
Вопрос: Какие выбрать диски для NAS?

Лучший ответ:
Не брать диски из одной партии, чтобы уменьшить вероятность одновременного выхода из строя

Худший ответ:
Вам для дома? Да в принципе любые подойдут :) Я взял терабайтный WD Green (7200, 8Мб), клиентов обычно 3-4 одновременно (основной сценарий — торрент пишет, а остальные — читают тяжёлые медиафайлы). Скоростью работы удовлетворён полностью.
Вопрос: Как форсировать вывод 5.1 звука по hdmi?

Лучший ответ:
1. Последние ли версии драйвера установлены? У меня с выводом 5.1 на видеокарте Нвидия проблем нет.
2. Из игр вы 5.1 по цифре не выведете. Там же обычный звук РСМ формируется, поэтому либо выводить аналогом, либо сразу на ресивер. Тогда 5.1 РСМ поток будет работать, а вот телек может битстримить dts или dd. Так что после него получите только 2.0 РСМ.

Худший ответ:
Ага, спасибо. Вчера ночью как раз осознал всё, что вы разъяснили. Проще оставить подключение тюльпанами, чем так мучиться с виртуальными кабелями. И вроде в той статье не сказано как задействовать HDMI видюхи для вывода DD Live (только оптика или коаксиал).
Вопрос: Как соединить массив по ключу?

Лучший ответ:
Тех, кто говорит про получение данных на уровне БД, не слушайте. У вас получается динамическое число столбцов, а здесь без реального программирования БД не обойтись. 
На самом деле, требуемая структура не является оптимальной. Во всяком случае пока нет доводов в ее пользу. Лучше на выходе получать что-то вроде того, что приведу ниже. Такие данные гораздо удобнее в дальнейшем обрабатывать.$arr = array(array('id' => 1,  'year' => 2013, 'name' =>  "Александр"),
	array('id' =>2, 'year' => 2013, 'name' =>  "Сергей"),
	array('id' => 3, 'year' => 2012, 'name' =>  "Никита"),
	array('id' => 4, 'year' => 2012, 'name' =>  "Володя"));

function by_year($arr) {
	$result = array();
	foreach ($arr as $l) {
		$result[$l['year']][] = $l['name'];
	}
	return $result;
}

print_r(by_year($arr));
Результат:Array
(
    [2013] => Array
        (
            [0] => Александр
            [1] => Сергей
        )

    [2012] => Array
        (
            [0] => Никита
            [1] => Володя
        )

)
Если нужно сохранять id пользователя, то ставьте его на место ключа ($result[$l['year']][$l['id']] = $l['name'];).
Проверки на NULL-значения и прочие вводите по необходимости, в зависимости от ограничений на таблицах БД.

Худший ответ:
Вообще то это на уровне бд нужно делать. Если Mysql то group by year
Вопрос: Что вначале backend или frontend? как разобраться с бэкендом?

Лучший ответ:
учи Flask flaskbook.com
habrahabr.ru/post/193242
потом Django djbook.ru

Худший ответ:
Всегда надо попробовать темную сторону. 
Хочешь покорить веб разработку? Правильное решение. 
Итак поехали. Каждый пункт гуглим и разбираемся в вопросе:
1- html с нуля
2- css с нуля
3- Как сверстать psd шаблон
4- js для новичков 
5- Пишем сайт визитку html css js
Тут ты будешь готов для бекенда. Нужно выбрать бекенд.
Языки(framework): php(yii, yii2, laravel, codeigniter, kohana), python(django, flask), ruby(ruby on rails, sinatra).  Гуглишь все это и выбираешь что будешь изучать. Далее по результату пишешь на тостер что ты начинаешь учить бекенд и выбрал себе язык. Как учить и какой фреймворк юзать.
Работаешь с выбранным языком и фреймом, постепенно появится и js фреймы(вот тут ты сможешь уже понимать какое тебе нужно направление, куда развиваться как спецу)
Проходит 1-3 года. Ты точно знаешь фронт или бек тебе нужен.
Вопрос: Почему Ubuntu потребляет больше энергии чем Windows?

Лучший ответ:
Посмотрите сюда

Худший ответ:
Накатите себе ведро от 11.04 бубунты. Там вроде серьёзно пошаманили, у меня нетбук с 4х до почти 7 часов прыгнул.
Вопрос: Как сделать переключение между ссылками,при этом не создавая миллион php-файлов?

Лучший ответ:
Почитайте, как сделать роутер на PHP

Худший ответ:
это называется ЧПУ, обычно делается в настройках web сервера и в настройках фреймворка - CMS.
Т.е. запрос перенаправляется в другое место и там обрабатывается в зависимости от вида запроса.
В PHP обычно делают единую точку входа - файл index.php и все запросы отправляют в него, далее всё делается в зависимости от используемых фреймворков - CMS .
Вопрос: Как изолировать группу без помощи двойного клика по объекту?

Лучший ответ:
Либо, как выделить объект, если он лежит за другим объектом?
Объект под другим объектом можно выделить курсором при зажатом Ctrl. 
Только там всё шиворот-навыворот. Если нужно выделить именно объект, то изначально выбирать нужно Selection Tool (V, чёрная стрелка), чтобы при зажатии Ctrl он переключился на Direct Selection Tool (A, белая стрелка) — группы в таком случае игнорируются, выделяются объекты. Если надо выделить группу, лежащую под другими объектами, то выбираем Direct Selection Tool, зажимаем Ctrl, можем выбирать низлежащие группы целиком чёрной стрелкой.

Худший ответ:
Есть вкладка Layers, где все объекты списком. Но это очевидно и не всегда удобно для быстрой работы.
Я предпочитаю просто залочить все слои которые не должны попадать под выделение, каждый через Cmd(Ctrl)+2 или "Все вышележащие" через меню
Через Alt+Cmd(Ctrl)+2 снимается "Lock" со всех слоев.