Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.02.2012, 00:49
Новичок на форуме
Отправить личное сообщение для dillinja-dnb Посмотреть профиль Найти все сообщения от dillinja-dnb
 
Регистрация: 27.02.2012
Сообщений: 3

A Href - JavaScrip вызов функции
Ребят такая проблема, найти тут чего-то не смог, похожую проблему нашёл, но как свою решить не понял... опишу суть..

есть список файлов проигрывателя файлов

и есть ссылки по которым активизируется плеер (ссылки с кнопкой проигрывания Плеей и стоп )

Код:
<a href="javascript:mix(0,1);"  id="mxp0"><img src="/files/play.png"/></a>

<a href="javascript:mix(1,1);"  id="mxp1"><img src="/files/play.png"/></a>

<a href="javascript:mix(2,1);"  id="mxp2"><img src="/files/play.png"/></a>
и т.д.

javascript:mix([номер трека], [то что нужно делать в функции]);


сама функция:

function mix(n,d)
{
	if (d==1)
	{
		$("#mxp"+n+" img").attr("src", "/files/pause.png");
		$("#mxp"+n).attr("href", "javascript:mix("+n+",2);");
		player.play();
	}
	else if  (d==2)
	{
		$("#mxp"+n+" img").attr("src", "/files/play.png");
		$("#mxp"+n).attr("href", "javascript:mix("+n+",1);");
		player.pause();
	}
}


тоесть что мы получаем, если мы нажимаем на ссылку с картинкой PLAY она меняется на картинку PAUSE и соответственно меняется атрибут ссылки.

Оно всё работает, но вот только с одним косяком, а именно
Первый раз если нажать на ссылку всё хорошо, но если пройтись по списку, чтобы нормально всё заработало, приходится жать на кнопку PLAY или Pause (после первого прохода) - два раза....


ТОесть кликаю один раз на ссылку ничего не происходит, второй раз кликаю всё делается как нужно..

В чём косяк ??? честно Jquery плохо знаю, поэтому наверно и такая ерунда, помогите пожалуйста, заранее спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 27.02.2012, 02:10
Новичок на форуме
Отправить личное сообщение для dillinja-dnb Посмотреть профиль Найти все сообщения от dillinja-dnb
 
Регистрация: 27.02.2012
Сообщений: 3

Ураааааааааааааа
Урааа разобрался )) Подскажите ребят)) насколько кривоват мой рабочий вариант???

Эту хрень ) меняем
Цитата:
<a href="javascript:mix(0,1);" id="mxp0"><img src="/files/play.png"/></a>
<a href="javascript:mix(1,1);" id="mxp1"><img src="/files/play.png"/></a>
<a href="javascript:mix(2,1);" id="mxp2"><img src="/files/play.png"/></a>
и т.д.
НА

Цитата:
<img src="/files/play.png" class="mxp"/>
<img src="/files/play.png" class="mxp"/>
<img src="/files/play.png" class="mxp"/>
и т.д.
А теперь переписываем сам скрипт:

function mix(n,d)
{

	if (d==1)
	{
		$('.mxp').eq(n).attr("src", "/files/pause.png");
		$('.mxp').eq(n).click(function(){mix(n,2);});
		player(n).play();
	}
	else if  (d==2)
	{
		$('.mxp').eq(n).attr("src", "/files/play.png");
		$('.mxp').eq(n).click(function(){mix(n,1);});
		player(n).pause();
	}
}





Всё работает)) знаю можно короче написать)) но написал как смог )) ааа главное всёёё сам решил !))) эхх как приятно)
Ответить с цитированием
  #3 (permalink)  
Старый 27.02.2012, 02:44
Аватар для T-sh
Профессор
Отправить личное сообщение для T-sh Посмотреть профиль Найти все сообщения от T-sh
 
Регистрация: 04.12.2009
Сообщений: 579

на сам элемент $('.mxp').eq(n) можно повесить значение, например:

$('.mxp').data("checkplay","false"); и изменять его при клике на true. по нему же и проверять, проигрывается ли трек или на паузе..

тогда от всяких "d" избавишься и функция mix вообще будет не нужна.

и проверять значение переменной следует тройным равно. "==="
__________________
С моих слов записано верно.
Ответить с цитированием
  #4 (permalink)  
Старый 28.02.2012, 00:06
Новичок на форуме
Отправить личное сообщение для dillinja-dnb Посмотреть профиль Найти все сообщения от dillinja-dnb
 
Регистрация: 27.02.2012
Сообщений: 3

спасибо буду знать )) буду познавать дальше
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двойной вызов функции Tmin10 jQuery 8 08.12.2011 15:19
Вызов функции (Sandr) AJAX и COMET 12 16.03.2011 10:43
Вызов функции TicTac Общие вопросы Javascript 2 24.01.2011 23:35
Вызов функции, находящейся в другой функции ZneP Events/DOM/Window 6 24.08.2010 18:45
Вызов функции из другой функции.. ?? glutton Общие вопросы Javascript 3 21.08.2009 22:33