Я пытаюсь изменить стиль div #info_frame
который содержит класс nazwa_klasy_display
и я не могу это исправить.
$('.box').mouseenter(function() {
//show up scores
$( this ).children( '.scores' ).css( 'display', 'block' );
nazwa_klasy = $( this ).attr('class').split(' ')[1];
nazwa_klasy_display = nazwa_klasy.split('_')[1];
if ($('#info_frame').has(nazwa_klasy_display))
{
$('#info_frame .'+nazwa_klasy_display).style.display ="block";
}
});
вы смешиваете jQuery с простым Js:
либо вы используете
/* chain a jQuery method, e.g. show() */
$('#info_frame.'+nazwa_klasy_display).show()
или
/* access to the dom node before using plain js */
$('#info_frame.'+nazwa_klasy_display).get(0).style.display = "block";
$('#info_frame .'+nazwa_klasy_display)[0]
?
Если мое понимание верное, вы ищете <div>
, у которого есть идентификатор info_frame
и класс nazwa_klasy_display
тогда вам нужно исправить ваш селектор CSS. у вас там есть место, когда этого не должно быть.
$('#info_frame.'+nazwa_klasy_display)
селектор #info_frame.[nazwa_klasy_display]
будет искать все, что имеет класс nazwa_klasy_display
который является потомком *#info_frame
$("#info_frame").hasClass('.'+nazwa_klasy_display).css('display','block');
попробуй это
$('#info_frame .'+nazwa_klasy_display).css('display', 'block');
?