Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.06.2012, 11:52
Интересующийся
Отправить личное сообщение для frundik Посмотреть профиль Найти все сообщения от frundik
 
Регистрация: 22.05.2012
Сообщений: 25

Не могу перезагрузить класс
Добрый день !
Существует следующая проблема:
Есть галерея, на слайдере есть кнопка, при нажатии на нее
ordbut.click($.fancybox.ordbutfunc);

выполняется вот эта функция
$.fancybox.ordbutfunc = function() {
		alert ('Ord Button');
		this.id='fancybox-ordbutacc';
		return false;
		
};

При переходе к следующему слайду необходимо вернуть кнопке исходный класс. Делаю это так
_show = function() {
			var pos, equal;
			
			//Ordbut
			alert ('new');
			alert (ordbut.id);
			ordbut.id='fancybox-ordbut';
			alert (ordbut.id);
			
			loading.hide();........


Но вот беда, класс при переходе не возвращается. Алерты выводят, что класс именно тот который я присвоил ordbut.id='fancybox-ordbut', но сама кнопка выглядит так, как было ей присвоено при нажатии.

Помогите разобраться.
Заранее благодарен
Ответить с цитированием
  #2 (permalink)  
Старый 11.06.2012, 14:03
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

ordbut.id
это же не класс а id
а класс так меняется
ordbut.className='red';

Последний раз редактировалось vadim5june, 11.06.2012 в 14:22.
Ответить с цитированием
  #3 (permalink)  
Старый 11.06.2012, 14:59
Интересующийся
Отправить личное сообщение для frundik Посмотреть профиль Найти все сообщения от frundik
 
Регистрация: 22.05.2012
Сообщений: 25

Та нет! Тут дело не в этом! Дело в том, что видимо я неправильно описал переменные.
Подскажите пожалуйста как в этом коде
$.fancybox.ordbutfunc = function() {
		alert (this.id);
		this.id='fancybox-ordbutacc';
		return false;
		
	};

узнать ссылку на объект который фигурирует в this, что бы понимать как сослаться на эту переменную в другой функции ???
Ответить с цитированием
  #4 (permalink)  
Старый 11.06.2012, 15:18
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

this указывает на $.fancybox
я так думаю
Ответить с цитированием
  #5 (permalink)  
Старый 11.06.2012, 15:30
Интересующийся
Отправить личное сообщение для frundik Посмотреть профиль Найти все сообщения от frundik
 
Регистрация: 22.05.2012
Сообщений: 25

Дело в том, что вот эта конструкция работает
$.fancybox.ordbutfunc = function() {
		alert (this.id);
		this.id='fancybox-ordbutacc';
		return false;
		
};

И чудесно по вызову ordbut.click($.fancybox.ordbutfunc); меняет CSS класс кнопки.
А вот обратно... никак
вот в этом месте необходимо вернуть CSS класс "fancybox-ordbut"
_show = function() {
			var pos, equal;
			alert ('new'+ordbut.id);
			//Ordbut
			loading.hide();
			ordbut.id ='fancybox-ordbut';......

не могу достучаться до ordbut.id в другой функции
В приложении весь файл!
Очень прошу помощи:
Вложения:
Тип файла: txt jquery.fancybox-1.3.4.txt (29.2 Кб, 2 просмотров)
Ответить с цитированием
  #6 (permalink)  
Старый 11.06.2012, 17:03
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

ordbut.click($.fancybox.ordbutfunc);
здесь вы функцию передаете как аргумент и this указывает уже на ordbut
только разберитесь на dom или jquery объект
Ответить с цитированием
  #7 (permalink)  
Старый 11.06.2012, 17:12
Интересующийся
Отправить личное сообщение для frundik Посмотреть профиль Найти все сообщения от frundik
 
Регистрация: 22.05.2012
Сообщений: 25

Может отдохнуть мне надо !
Но все ступор!
Это jquery объект - как мне на него сослаться ?
Ответить с цитированием
  #8 (permalink)  
Старый 11.06.2012, 17:26
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от frundik Посмотреть сообщение
Может отдохнуть мне надо !
Но все ступор!
Это jquery объект - как мне на него сослаться ?
Надо наверно отдохнуть
Дело в том что писать ordbut.id
можно если это dom
а если jquery так ordbut.attr('id','fffff')
Ответить с цитированием
  #9 (permalink)  
Старый 11.06.2012, 17:30
Интересующийся
Отправить личное сообщение для frundik Посмотреть профиль Найти все сообщения от frundik
 
Регистрация: 22.05.2012
Сообщений: 25

Все! Отдыхать срочно!
Конечно!
Теперь все работает!
Блин, целый день убил на поиск проблемы, а проблема была не в коде а в голове!

Спасибо!
Очень признателен!
Ответить с цитированием
  #10 (permalink)  
Старый 11.06.2012, 17:49
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от frundik
И чудесно по вызову ordbut.click($.fancybox.ordbutfunc);
Обработчик на клик ставили каким кодом?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передал аяксом класс в <div>, но как отловить событите клик на этот класс ? saturn Элементы интерфейса 11 31.05.2012 10:30
Как в общем меню для всех страниц поменять класс определенного пункта в зависимости о phenom Элементы интерфейса 2 08.04.2011 11:09
Jquery немогу установить класс! shureg Общие вопросы Javascript 4 26.10.2010 14:37
setInterval добавлять класс по таймеру igsavenko jQuery 2 06.07.2010 13:00
Не могу получить высоту из css asci Общие вопросы Javascript 5 30.03.2009 13:31