Как я могу сделать результаты jQuery JSON результат сделать элементы видимыми - PullRequest
0 голосов
/ 22 августа 2009

На моей главной странице у меня есть этот код jquery, который выполняет ajax-вызов и загружает все содержимое страницы в DIV на моей странице, он обновляет каждые X секунд

<!-- Auto update/look for NEW notifications --> 
<script type='text/javascript'> 
$(document).ready(function(){ 
     var updatenotification = function(){ 
          $('#notificationcontainer') 
               .load('/modules/member/home/notifications.inc.php') 
               .fadeIn("slow"); 
     }; 
     var auto_refresh = setInterval(function(){updatenotification();}, 5000); 
     updatenotification(); 
}); 
</script> 
<!-- ENDS HERE -->


<div id="#notificationcontainer"></div>

Я хочу изменить это, хотя бы, чтобы он отправлял меньше данных назад и вперед, поэтому я хочу, чтобы вместо этого мойоксtification.inc.php выводил строку JSON. Я сделаю так, чтобы они имели эти значения;

item2 = 1

item5 = 1

обратите внимание, что есть 2 элемента, которые помечены 1, всего 6 элементов, но я включу только те в строку json, которую мне нужно показать, на главной странице я хочу сделать код, который будет читать строку json 1 означает, что jquery должен сделать этот элемент видимым на странице У меня будут все эти элементы скрыты на странице, когда нужно будет показать 1, jquery может просто сделать его видимым. Также имена являются просто общими, все они будут изменены

<style type="text/css">
#item1{
    display:none;
}
#item2{
    display:none;
}
#item3{
    display:none;
}
#item4{
    display:none;
}
#item5{
    display:none;
}
#item6{
    display:none;
}
</style>


<div id="notificationhead">Notifications</div>
<div class="notificationlink" id="item1"><a href="">Testing 1</a></div>
<div class="notificationlink" id="item2"><a href="">Testing 2</a></div>
<div class="notificationlink" id="item3"><a href="">Testing 3</a></div>
<div class="notificationlink" id="item4"><a href="">Testing 4</a></div>
<div class="notificationlink" id="item5"><a href="">Testing 5</a></div>
<div class="notificationlink" id="item6"><a href="">Testing 6</a></div>

Как я могу это сделать?

1 Ответ

1 голос
/ 22 августа 2009

Не решение вашего вопроса, а еще один совет. Возможно, вы могли бы немного упростить задачу, добавив дополнительный класс (например, «visible») к div, который вы хотите показать, и установив CSS на display: block для этого и display: none на класс notificationlink. Устранит накладные расходы при ручной установке идентификаторов для каждого элемента div.

В HTML допускается несколько классов, поэтому вы можете получить что-нибудь вроде class="notificationlink visible first-child extended". Совершенно верно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...