Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Подскажите по новичку с проверкой if/else в jQyuery (https://javascript.ru/forum/jquery/13788-podskazhite-po-novichku-s-proverkojj-if-else-v-jqyuery.html)

shmep 13.12.2010 22:55

Подскажите по новичку с проверкой if/else в jQyuery
 
Скрипт работает замечательно, пока не доходит до последнего пункта в списке, как нужно написать if чтобы он перепрыгивал с последнего пункта на первый, когда доходил до последнего?

Код:

#accordian .active {
        display: block !important;
}
#accordian .txtsutra {
        display: none;
}

<div id="accordian" class="sutra">
<div class="txtsutra" id="sutra_1">текст</div>
<div class="txtsutra" id="sutra_2">текст</div>
<div class="txtsutra" id="sutra_3">текст</div>
<div class="txtsutra" id="sutra_4">текст</div>


$(document).ready(function(){
$(".sutra .txtsutra:eq(<?php echo rand(1, 15); ?>)").show('fast').addClass("active");
$(".sled_a").click(function(){
	$(".sutra .active").hide('fast');
	if($(".sutra .txtsutra:last") == true){
		$(".sutra .active").removeClass("active");
		$(".sutra .txtsutra:first").addClass("active").show('fast');
	} else {
		$(".sutra .active").removeClass("active").next(".txtsutra").show('fast').addClass("active");
	};
});

x-yuri 14.12.2010 01:09

ты увяз в jQuery ;)
new List('#accordian', '.sled_a');

function List( el, a ){
    this._items = $(el).find('.txtsutra');
    var randIdx = Math.floor(Math.random()*this._items.length));
    this.activate( randIdx );
    $(a).click( this._onClick.of(this) );
}

List.prototype.activate = function( i ){
    if( '_active' in this )
        $(this._items[this._active]).hide('fast').removeClass('active');
    this._active = i;
    $(this._items[this._active]).show('fast').addClass('active');
}

List.prototype._onClick = function(){
    var nextIdx = (this._active+1)%this._items.length;
    this.activate( nextIdx );
}

Function.prototype.of = function( o ){
    var f = this;
    return function(){
        return f.apply(o, arguments);
    };
}

PeaceCoder 14.12.2010 13:14

Цитата:

Сообщение от shmep
if($(".sutra .txtsutra:last") == true){

Ух блин да же так бывает оО

П.С. Изучите JQ сначала и его структуру, потом уже пытайтесь чтото писать. А по поводу кода. на выходе будет обьект в любом случае и соотв true всегда будет...


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