I'm studying this article, the details of which are irrelevant to this question, which is about jQuery syntax.
In the example at the link above, there's the following piece of JavaScript
$(function() {
// ...
var tabPostFix = 'Tab';
var hash = location.hash;
if (hash.length > 0) {
// ...
var idx = $('.tabPage').index($(".tabPage:"+hash+tabPostFix));
var thisTab = $('.tab:eq('+idx+')');
// ...
}
// ...
});
where tabPage and tab are classes in HTML file.
Despite I was under the impression that the "dollar syntax" of jQuery used CSS syntax, I eventually found that the syntax $('.tab:eq(some-number)') is indeed valid jQuery syntax, even though it isn't CSS syntax, is it?
On the other hand, I haven't found what $('whatever:#some-hash'). Given the example, I think the .index method is trying to pick the HTML element with class tabPage and id attribute the result of hash+tabPostFix (well, without the leading #), but I don't get the significance of the : right after tabPage.