Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Помогите с присвоением класса в цикле (https://javascript.ru/forum/dom-window/33106-pomogite-s-prisvoeniem-klassa-v-cikle.html)

tony_m 10.11.2012 17:15

Помогите с присвоением класса в цикле
 
Вывожу элементы списка в цикле php dowhile
должно получиться так первый элемент с классом here

<ul class="tophot">
	  [B]<li  class="here" id="tophot1" >[/B]
          <a  href="/news/1" title="">'.$namefull.'<span>10 февраля 2011 года, 17:00</span></a>
          <i></i>
        </li>
		  
        <li id="tophot2" >
          <a  href="/news/1" title="Футбол (англ. football, «ножной мяч»).">'.$namefull.'<span>10 февраля 2011 года, 17:00</span></a>
          <i></i>
        </li>
		
		<li id="tophot3" >
          <a  href="/news/1" title="Футбол (англ. football, «ножной мяч»).">'.$namefull.'<span>10 февраля 2011 года, 17:00</span></a>
          <i></i>
        </li>
  	   </ul>

а потом этот клас должен автоматически переключаться
jQuery(function (d) {
	 parametr = {
	 auto:false, // true - в случайном порядке, false - в порядке возрастания
	 start:0,     // исходное изображение при автосмене(0,1,2)
	 intensiv:1  // скорость интервала (5 сек)
	 }
    d(".tophot li").mouseover(function () {
        if (d(this).hasClass("here")) {} else {
            d(".tophot li").removeClass("here");
            d(this).addClass("here");
            bem = d(this).attr("id");
            d(".main-hot .img:visible").fadeOut(300, function () {});
            d("#imgfor" + bem).fadeIn(300)
        }
    }, function () {});
 
var myInterval = setInterval(triggerclick,parametr.intensiv*1000);

//интервал
	function triggerclick() {
	if(parametr.auto){
			ret = Math.floor(Math.random()*4);
		}
	else {
			
			(parametr.start < 4) ? parametr.start = parametr.start + 1 : parametr.start = 0;
			ret = parametr.start;
		}
		
		
		d(".tophot li:eq("+ret+")").trigger("mouseover");
	}
	d('.main-hot').mousemove(function(){
		clearInterval(myInterval)
	});
	d('.main-hot').mouseleave(function(){
		clearInterval(myInterval)
		myInterval = setInterval(triggerclick,parametr.intensiv*1000)
	});
});


как бы мне правильно организовать вывод цикла?
если я буду выводить так то все элементы списка будут с классом
<ul class="tophot">
	  [B]<li  class="here" id="tophot1" >[/B]
          <a  href="/news/1" title="">'.$namefull.'<span>10 февраля 2011 года, 17:00</span></a>
          <i></i>
        </li>
</ul>
может нужно скрипт в тег <li> добавить, какой не знаю((
PS в js не силен помогите

`p r o x y 12.11.2012 12:58

Цитата:

Сообщение от tony_m (Сообщение 215222)
как бы мне правильно организовать вывод цикла?

Вам бы понятно написать ТЗ, для начала.
А тож ничего не понятно.

lord2kim 12.11.2012 13:47

tony_m,
for (i) { i==0 ? class="here" : class="tophot"+i }


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