2010-08-31 3 views
2

Я использую вкладки JQuery UI и хочу изменить свойства элемента при наведении курсора мыши.Работа с JQuery для изменения свойств CSS

Мой HTML заключается в следующем:

<ul id="sub-tabs"> <li><a href="#000"><span>000<br /><p id="ct1">General</p></span></a></li> </ul>...

И JQuery является:

$('#guide-nav ul#sub-tabs span').mouseover(function() { 
    $("#guide-nav ul#sub-tabs li p").css("display", "none"); 
}); 

Но это не работает.

ответ

1
<ul id="sub-tabs"> 
    <li><a href="#000"><span>000<br /><p id="ct1">General</p></span></a></li> 
</ul> 

Jquery является:

$('#guide-nav ul#sub-tabs span').mouseover(function() { 
    $("#guide-nav ul#sub-tabs li a span p").css("display", "none"); 
}); 

Или попробуйте это:

$('#guide-nav ul#sub-tabs span').mouseover(function() { 
    $("p#ct1").css("display", "none"); 
}); 

Или это:

$('#guide-nav ul#sub-tabs span').mouseover(function() { 
    $(this).find('p').css("display", "none"); 
}); 
+0

Это не похоже, не работает. Я думал, что, возможно, вкладки JQuery UI могут переписывать стили и/или имена элементов, поэтому я удалил вызов и все равно не пошел. –

0

Используйте этот

$('#guide-nav ul#sub-tabs span').mouseover(function() { 
    $("#guide-nav ul#sub-tabs li p").css({display:"none"}); 
}); 
+1

Это просто еще один способ написать .css («display», «none») и ничего не изменит о том, как реагирует его код. – bradenkeith

+0

По-прежнему нет. Я могу попробовать в независимом окружении, чтобы увидеть, запутан ли какой-то другой код на странице ... –

0

Хорошо, я обернут это в функции, и она работает ...

$(function() {            
    $('#guide-nav ul#sub-tabs li a span').mouseover(function() { 
     $(this).find('p').css("display", "none"); 
    }); 
}); 

Я решил использовать вышеуказанное заявление только скрыть элементы внутри выбранной вкладки, потому что будет кратные

0

Когда я пробую ваш код, он действительно работает. Вы уверены, что DOM закончил загрузку, когда вы выполняете javascript?

$(document).ready(function() { 
    $('#guide-nav ul#sub-tabs span').mouseover(function() { 
    ("#guide-nav ul#sub-tabs li p").css("display", "none"); 
    }); 
}); 

Вместо .css("display", "none"); вы также можете использовать .hide()

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