Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Показ/скрытие элементов (https://javascript.ru/forum/events/49964-pokaz-skrytie-ehlementov.html)

kefalia 05.09.2014 12:04

Показ/скрытие элементов
 
Добрый день! Задача стояла следующая.
Есть список категорий и список товаров, выведенных на одной странице.
В случае использования фильтра товаров категории скрываются, остается только список отфильтрованных товаров.
Требовалось написать скрипт, который при загрузке страницы:
1) Если список категорий присутствует (то есть, не был применен фильтр), скрывает отображение товаров
2) Если список категорий не отображается (то есть, был применен фильтр товаров), отображает список товаров.

HTML
<div id="categoriesHidden">
//Здесь отображается список категорий
</div>
<div class="jshop_list_product">
//Здесь происходит вывод товаров
</div>


Написала следующее:
(function($){
	$(document).ready(function(){
		
		$('.jshop_list_product').show();

		if ( $.trim($('#categoriesHidden').html() != "")){
			$('.jshop_list_product').hide();
		}
		
	});
})(jQuery);


Работает только скрытие товаров при отображении списка категорий. При загрузке результатов после использования фильтра (это происходит посредством перезагрузки страницы), у класса .jshop_list_product по-прежнему стоит свойство display:none;

Подскажите, в чем может быть проблема :)

Просьба: если оно должно по идее работать, но не работает, напишите об этом тоже.

kefalia 05.09.2014 23:27

Вопрос снят. Заработало после того, как прописала вместо
if ( $.trim($('#categoriesHidden').html() != "")){

следующее:
if (document.getElementById('categoriesHidden').innerHTML.trim()!=""){


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