2012-06-22 4 views
0

У меня есть следующий CSS на моей HTML странице:Как поменять два класса на каждом элементе в HTML странице

<style type="text/css"> 
    .hidden   {display:none;} 
    .visible   {display:block;} 
</style> 

И почти каждый, и на странице принадлежит к одной или другой из этих стилей CSS. Мне нужно, чтобы javascript менял все на противоположное число ... т. Е. каждый скрытый становится видимым и наоборот.

Я использовал что-то подобное в более раннем проекте, но это только позволяет мне поменять одну вещь за раз и заставляет меня указывать ее идентификатор напрямую. Мне нужен глобальный сценарий «если видимый» - сменить на скрытый - и наоборот ».

код (который я пытался и не расширить, чтобы это поведение) ниже:

<script type="text/javascript"> 
    function toggle(divID) {var item = document.getElementById(divID); if (item) {item.className=(item.className=='hidden')?'visible':'hidden';}} 
</script> 

Любые идеи?

ответ

1
<style type="text/css"> 
.hidden   {display:none;} 
.visible   {display:block;} 
.temp   {display:none;} 
</style> 

function swap() { 
$('.hidden').removeClass('hidden').addClass('temp'); 
$('.visible').removeClass('visible').addClass('hidden'); 
$('.temp').removeClass('temp').addClass('visible'); 
} 
+0

Я попытался использовать вашу функцию javascript после добавления jquery-1.7.2.min.js в проект Я работаю на. Он запускает (сбрасывает команды alert() в нем, чтобы убедиться, что он задыхается), но он ничего не делает ... странность. –

+0

Err, чтобы убедиться, что это не задыхается ... хорошо, так что я могу опечатать с лучшими из них! * смеется * –

+0

http://jsfiddle.net/XgqWC/ Ответ обновлен, теперь он работает. – manuskc

0

Просто используйте JQuery

$('.hidden').removeClass('.hidden').addClass('.visible'); 
+0

Я надеялся избежать добавления JQuery ... но мне кажется, у меня мало выбора в этом вопросе. Добавлено и пытается использовать код Ману ниже, что, я думаю, имеет больше смысла (особенно если я пытаюсь использовать его несколько раз в сеансе.) –

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

  • Нет связанных вопросов^_^