Не работает скрипт в JQuery, дело в ES6 ?
Здраствуйте!
подскажите пожалуйста, как можно переписать $('.classА#'+id+' .classB').css({'background-position' :'Х1 X2'}); в стандарте ЕS6? (Если причина в этом.), так как в таком ввиде .css({'background-position' :'Х1 Х2'}) не меняется. Смысл всего этого в том, что бы при нажатии на елемент списка менялся {'background-position' :'Х1 Х2'} только у этого елемента Зарание спасибо! |
Sagum,
что такое 'Х1 X2' и зачем тут классы '.classА#'+id+' .classB'? |
Цитата:
<!doctype html> <html lang="ru"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> div{ height: 100px; width: 100px; background-image: url(https://i.pinimg.com/736x/91/e6/0d/91e60d30a2889213918a7629ab351d92.jpg); background-position: 0px 0px; background-repeat: no-repeat; background-size: 100px 400px; margin-right: 10px; } body{ display: flex; justify-content: center; } </style> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.0/jquery.min.js"></script> <script> $(function() { $('div').on('click', function() { $(this).css({'background-position': '0px -300px'}) }) }); </script> </head> <body> <div></div> <div></div> <div></div> <div></div> <div></div> </body> </html> |
Здравствуйте!
К сожалению не получилось. Может быть я не корректно описал проблемму, попробую еще раз: Я пытаюсь написать mediaplayer, который состоит из самого player и списка песен. Pядом с названием песни стоит значек play pause, который должен переключатся при клике на песню, причем только у данной песни. Уменя иммется массив: songs = [ track_one=[0, 'Name-Song_1) ', song1.mp3', '231.026'], … track_twelve=[19, 'Name-Song_12 ', 'song12.mp3', '172.617143'], ]; список песен выводистся в виде в циклa. И вот когда проиходит клик на новую песню $('.song, .play-pause').on('click', function() { let id = $(this).attr('id'); $('.song#'+id+' .play-pause__song').css({'background-position' :'-12px 2px'}); // плай и пауза это одна картинка //"… здесь выполнается функция запуска новой песни." }); play, pause не меняются у выбранной песни, но если в этой части $('.song#'+id+' .play-pause__song') убрать '.song#'+id+' и оставить только ' .play-pause__song', то все работает только смена плай на пауза проиходит у всех песен одновременно. .play-pause__song — это класс у картинки с play, pause .song - это класс у песни Зарание спасибо |
Sagum,
можно только гадать, какое на самом деле у вас html. |
Cкажите пожалуста,
это часть $('.song#'+id+' .play-pause__song') в ЕS6 также выглядит или имет другой вид? |
Sagum,
Цитата:
$('.song').on('click', '.play-pause', function(event) { let id = event.delegateTarget.id; $('#'+id+' .play-pause__song').css({'background-position' :'-12px 2px'}); // плай и пауза это одна картинка //"… здесь выполнается функция запуска новой песни." }); |
рони и Rise спасибо вам за ответы, но опять не работает.
Ладно буду думать дальше, еще раз спасибо. |
Часовой пояс GMT +3, время: 20:01. |