Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Проблема с removeClass (https://javascript.ru/forum/jquery/36517-problema-s-removeclass.html)

mrtarantul 18.03.2013 11:26

Проблема с removeClass
 
$('.imin').bind(
		'click',
		function(event){
			var minimized  = $('.imin~.minimized',$(this).parent());
			if (minimized.css("display") == 'none'){
				$(minimized).css("display","inline");
				$(this).removeClass("icon-plus").addClass("icon-minus");
			}else{
				$(minimized).css("display","none");
				$(this).removeClass("icon-minus").addClass("icon-plus");

			}		
		}	
	);

<td><p class="icon-plus imin"></p><div class="minimized">text</div></td>

Данный код работает на localhost (denwer), но не работает на сервере. Сайт и там и там полностью одинаковый.

До клика по imin

После клика


Как видно самовыпилилась [class^="icon-"].
Иконка плюса пропала, но иконка минуса не появилась.
В firefox тоже самое.

Куда смотреть? Уже задолбался с этой проблемой.

danik.js 18.03.2013 11:49

А причем тут removeClass то? Причем тут вообще jQuery если у вас проблема с селектором [class^="icon-"], под этот шаблон попадают элементы с атрибутом class, имеющим значение, начинающееся с "icon-".
Добавьте класс icon нужным элементам и измените селектор на .icon

mrtarantul 18.03.2013 12:22

danik.js,
Вы код смотрели? классы icon-plus и icon-minus подходят под селектор [class^="icon-"].

Данный код работает на localhost (denwer), но не работает на сервере. Сайт и там и там полностью одинаковый.

mrtarantul 18.03.2013 12:26

Проблему можно легко обойти, заменой removeClass, на css("background-position","x px y px") - просто менять координаты, но это как-то не кошерно.

danik.js 18.03.2013 12:32

Цитата:

Сообщение от mrtarantul
Вы код смотрели?

Вы мой ответ читали?
Я понимаю что вы свято верите что проблема в сервере и removeClass, до такой степени что ничего не видите и не слышите. Но все же:
<style>
    [class^="icon-"]{
        outline: 3px solid red;
    }
</style>
<p class="icon-plus imin">icon-plus imin</p>
<p class="imin icon-minus">imin icon-minus</p>

<img style="width:100%" src="http://www.motto.net.ua/old_site//img/cartoons/1298908072_F3E4E8E2EBE5EDE8E52E2E2E.jpg">

mrtarantul 18.03.2013 12:56

danik.js,
Я не свято верю что проблема на сервере или в removeClass, просто не понятно было почему один и тот же код работает по разному.

Спасибо, теперь я понял вашу мысль, просто слово "начинающееся", я не к тому слову применил.


Часовой пояс GMT +3, время: 19:53.