Проблема на самом деле исчезает. В JQuery у вас на скрипке есть такие вещи:
jQuery(".meta",this).fadeIn(400);
Это говорит JQuery искать .meta
в this
, а ключевое слово this
здесь относится к объекту JQuery, возвращаемому внешним селектором.
Другими словами, если ваш внешний селектор - .mas
, JQuery ищет только .meta
в .mas
. Если внешний селектор - .meta2
, он ищет только .meta
в .meta2
. И, конечно, .meta
находится внутри .mas
, но не находится внутри .meta2
, следовательно, проблема, с которой вы столкнулись.
Это можно исправить, просто удаляя второй параметр (this
) из каждого вызова исчезновения. Таким образом, строка раньше становится:
jQuery(".meta").fadeIn(400);
Обновленная скрипка здесь: http://jsfiddle.net/qsQWU/1/
Edit:
Как указывалось в других ответах и редактировании вопроса (спасибо за хедз-ап), я не думал о том, что это нужно делать по нескольким элементам по отдельности. Они верны; вышеуказанное решение не будет работать для этого сценария. Их альтернативы работают, но я также хочу предложить третью возможность: заменить this
на jQuery(this).parent()
, чтобы контекст стал на один уровень выше.
Новая скрипка, измененная после редактирования вопроса, находится здесь: http://jsfiddle.net/GU8Bj/