Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 28.04.2015, 19:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Babyslam,
без = и свойства добавляйте вне обьекта -- строка 4 внутри не видит строку 3
Ответить с цитированием
  #12 (permalink)  
Старый 29.04.2015, 11:21
Аватар для Babyslam
Интересующийся
Отправить личное сообщение для Babyslam Посмотреть профиль Найти все сообщения от Babyslam
 
Регистрация: 25.02.2015
Сообщений: 26

Рони,если я Вас правильно понял, то будет(не до конца понял что Вы имеете в веду):
var elWrap = $('#slider');
var radios = $('#rad');
el = elWrap.find('img'),
var Slider = {
   indexImg : 1,
   indexMax : el.length,
   phase : 2000;
    change() : = function(){
  	if (document.getElementsByName('rad')[0].checked == true) 
    { 
        var next = el.eq(indexImg-1);
     	el.not(next).animate({"left": v ? -640 : 640 ,opacity: 1},800);
        next.css({left: v ? 620 : -620}).animate({"left": 20, opacity: 1}, 800)
    }
    else if(document.getElementsByName('rad')[1].checked == true) 
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
        next.appendTo(elWrap).css({left: v ? 620 : -620}).animate({"left": 20}, 800)
    }
    else
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
el.not(next.animate({opacity: 1}, 800)).animate({opacity: 0},800);
    } 
}
}

Или сделать так:
el =  $('#slider')('img');
var Slider = {
   indexImg : 1,
   indexMax : el.length,
   phase : 2000;
    change() : = function(){
  	if (document.getElementsByName($('#rad'))[0].checked == true) 
    { 
        var next = el.eq(indexImg-1);
     	el.not(next).animate({"left": v ? -640 : 640 ,opacity: 1},800);
        next.css({left: v ? 620 : -620}).animate({"left": 20, opacity: 1}, 800)
    }
    else if(document.getElementsByName($('#rad'))[1].checked == true) 
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
        next.appendTo($('#rad')).css({left: v ? 620 : -620}).animate({"left": 20}, 800)
    }
    else
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
el.not(next.animate({opacity: 1}, 800)).animate({opacity: 0},800);
    } 
}
}

Последний раз редактировалось Babyslam, 29.04.2015 в 11:50.
Ответить с цитированием
  #13 (permalink)  
Старый 29.04.2015, 12:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Сообщение от Babyslam
change() : = function(){
Ответить с цитированием
  #14 (permalink)  
Старый 29.04.2015, 12:10
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Babyslam,
примерно
var Slider = {
   elWrap : $('#slider'),
   el : Slider['elWrap'].find('img'),
   indexImg : 1,
   indexMax : Slider['el'].length,
   phase : 2000,
   radios : $('#rad'),
   change : function(){
  	if (document.getElementsByName('rad')[0].checked == true)
    {
        var next = el.eq(indexImg-1);
     	el.not(next).animate({"left": v ? -640 : 640 ,opacity: 1},800);
        next.css({left: v ? 620 : -620}).animate({"left": 20, opacity: 1}, 800)
    }
    else if(document.getElementsByName('rad')[1].checked == true)
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
        next.appendTo(elWrap).css({left: v ? 620 : -620}).animate({"left": 20}, 800)
    }
    else
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
el.not(next.animate({opacity: 1}, 800)).animate({opacity: 0},800);
    }
}
}
Ответить с цитированием
  #15 (permalink)  
Старый 29.04.2015, 13:07
Аватар для Babyslam
Интересующийся
Отправить личное сообщение для Babyslam Посмотреть профиль Найти все сообщения от Babyslam
 
Регистрация: 25.02.2015
Сообщений: 26

рони
В том ключе действую?

var Slider = {
   elWrap : $('#slider'),
   el : Slider['elWrap'].find('img'),
   indexImg : 1,
   indexMax : Slider['el'].length,
   phase : 2000,
   radios : $('#rad'),
   Slider['elWrap'].append : ('<span class="next"></span><span class="prev"></span>'),
   btnNext = $('span.next'),
   btnPrev = $('span.prev');
   change : function(){
  	if (document.getElementsByName('rad')[0].checked == true)
    {
       var next = el.eq(indexImg-1);
     	el.not(next).animate({"left": v ? -640 : 640 ,opacity: 1},800);
        next.css({left: v ? 620 : -620}).animate({"left": 20, opacity: 1}, 800)
    }
    else if(document.getElementsByName('rad')[1].checked == true)
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
        next.appendTo(elWrap).css({left: v ? 620 : -620}).animate({"left": 20}, 800)
    }
    else
    {
        el.stop(true,true);
        var next = el.eq(indexImg-1);
el.not(next.animate({opacity: 1}, 800)).animate({opacity: 0},800);
    }
}
    bnnext: function(){
    btnNext.click(function() {
        window.clearTimeout(timer)
		indexImg++;
		if(indexImg == indexMax) {
         
           indexImg = 1;
		}
		Slider.change(true);
        
	});
}
    bnprev: function() { 
    btnPrev.click(function() {
        window.clearTimeout(timer)
		indexImg--;
		if(indexImg < 1) 
        {
           indexImg = indexMax;

		}
		Slider.change();
	});
                 }

    
}

И
var next = el.eq(indexImg-1);
нужно ли это менять на
next : el.eq(indexImg-1);
Ответить с цитированием
  #16 (permalink)  
Старый 29.04.2015, 13:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Babyslam,
пока у вас туго, но лучше бы это сделал знающий человек, я могу это сделать, но очень по дилетански (как правильно, делают такие вещи я просто не знаю). а так смотрите ошибки в консоли и думайте.
Ответить с цитированием
  #17 (permalink)  
Старый 29.04.2015, 13:43
Аватар для Babyslam
Интересующийся
Отправить личное сообщение для Babyslam Посмотреть профиль Найти все сообщения от Babyslam
 
Регистрация: 25.02.2015
Сообщений: 26

рони,да очень туго идет,читаю про объекты и методы,но как-то не очень помогает.
Не могу понять самой сути что и как взаимодействует по этому и туго.
Ответить с цитированием
  #18 (permalink)  
Старый 19.05.2015, 16:28
Аватар для Babyslam
Интересующийся
Отправить личное сообщение для Babyslam Посмотреть профиль Найти все сообщения от Babyslam
 
Регистрация: 25.02.2015
Сообщений: 26

Все мучаюсь с объектами и свойствами. Есть таймер рабочий,но при добавление объекта slider, таймер не работает.
Про просмотре консоли консоль пишет что elWrap не определенно,ну и дальше следует что el нету и indexMax и next. http://jsfiddle.net/u6onbo5p/3/

Последний раз редактировалось Babyslam, 19.05.2015 в 16:37.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Анимация gif картинки при нажатии на ссылку ainur777 Общие вопросы Javascript 2 06.07.2014 16:23
Два слайдера на странице ureech Элементы интерфейса 1 14.05.2014 15:56
Не загружается анимация при табах pelmeshka (X)HTML/CSS 0 05.03.2014 21:40
Анимация. Помогите понять почему не работает. kadurban jQuery 4 08.07.2010 20:50
Цикличность анимация? SashaBorandi jQuery 1 25.12.2008 09:20