2010-08-10 2 views
0

Мне нужно установить какой-то особый стиль для элемента, если какой-либо другой элемент виден (что обозначается специальным классом css и может динамически меняться). Мне нужно сделать это, потому что рендеринг страницы и ее поведение полностью контролируются кодом некоторой структуры, и я не хочу его менять. Я могу разместить любой контент в любой части страницы. Есть ли способ взлома?Как создать стиль элемента, зависящий от стиля другого элемента

Моя единственная идея заключалась в том, чтобы использовать какой-то подключаемый модуль, например «watch» для jquery, но он очень уродлив.

+2

Хм ... Насколько я могу видеть, изменение свойства наблюдающий плагин действительно единственный путь. –

+0

Вы не можете повлиять на изменения Framework? Вы не можете заставить его изменить класс какого-либо другого элемента в вашем документе (общий родительский элемент для двух элементов) вместо видимости одного элемента? Потому что это единственный способ, с помощью которого я могу работать в CSS. –

+0

@Pekka: Спасибо, что подтвердили это. Я действительно ничего не могу изменить в поведении модели. –

ответ

1

попробуйте использовать properychange/attributemodified событие

$("object-in-question").bind("DOMAttrModified propertychange", function(e) { 
    if($(this).is(":visible")).... etc 
    }); 

http://jsbin.com/abece4

+0

Не работает в Chrome 4, Chrome 5 (предположительно не в браузере WebKit), IE 6 и IE 7. –

+0

@stereofrog ваш фрагмент не работает для меня в 6 и 7. Я перепроверю позже. –

+0

@stereofrog это не работает для меня в 6 и 7, но это может быть до IETester. Сожалею. –

Смежные вопросы