A Href - JavaScrip вызов функции
Ребят такая проблема, найти тут чего-то не смог, похожую проблему нашёл, но как свою решить не понял... опишу суть..
есть список файлов проигрывателя файлов :help: и есть ссылки по которым активизируется плеер (ссылки с кнопкой проигрывания Плеей и стоп ) Код:
<a href="javascript:mix(0,1);" id="mxp0"><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 (после первого прохода) - два раза.... :blink: ТОесть кликаю один раз на ссылку ничего не происходит, второй раз кликаю всё делается как нужно.. В чём косяк ??? честно Jquery плохо знаю, поэтому наверно и такая ерунда, помогите пожалуйста, заранее спасибо |
Ураааааааааааааа
Урааа разобрался :))) Подскажите ребят)) насколько кривоват мой рабочий вариант???
Эту хрень :)) меняем Цитата:
Цитата:
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(); } } :dance: :dance: :dance: :dance: Всё работает)) знаю можно короче написать)) но написал как смог )) ааа главное всёёё сам решил !))) эхх как приятно) |
на сам элемент $('.mxp').eq(n) можно повесить значение, например:
$('.mxp').data("checkplay","false"); и изменять его при клике на true. по нему же и проверять, проигрывается ли трек или на паузе.. тогда от всяких "d" избавишься :) и функция mix вообще будет не нужна. и проверять значение переменной следует тройным равно. "===" |
спасибо :) буду знать :))) буду познавать дальше :)
|
Часовой пояс GMT +3, время: 06:20. |