Я вот о чем. В данном случае, с closest(), пофиг как ищется по классу ли или по ID, метод определяет действия - нашли первое совпадение и успокоились. То есть ну выиграли только в сокращении записи, не более.
А теперь представим, что речь идет о наборе именно уникальных элементов. Пусть этот набор размещен так:
<body><div><div id=a1 class=as><div id=a2 class=as><div id=a3 class=as>
и требуется получить этот набор являющийся родителями, то есть используем .parents(). Если в этом случае искать по селектору класса .parents('.as'), то будут опрошены элементы вплоть до body, а если по id, .parents('#a1, #a2, #a3'), то поиск остановится после нахождения третьего в наборе, ибо ID уникально и нечего более искать выше.