Talaan ng mga Nilalaman:

Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins: 3 Hakbang
Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins: 3 Hakbang

Video: Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins: 3 Hakbang

Video: Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins: 3 Hakbang
Video: iCodeFull #052 - Sistema de avaliação em estrelas com CSS e JavaScript | ilustraCode 2024, Nobyembre
Anonim
Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins
Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins
Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins
Criando Estrelas Para Votação Com JQuery Sem Uso De Plugins

Ang mga plugin ng Alguns, mga rate ng chamado, mga fantásticos, porem eles são enormes, alguns não são estilizáveis, outros não são elementos de formulário, ay maaaring mag-email sa pamamagitan ng post, at mga detalyeng detalyado. Precisamos pensar que plugins são feremonyas para facilitar, eo uso destes são realmente mustários, porem tambem precisamos ter em mente que alguns plugins mustitam funcionar em vários cenários, o que faz com que o plugin seja uma coisa genérica,sequentemente com muitos desuraoses muitasos, esequentemente (novamente), sejam grande.

Sa pamamagitan ng konseho, resolvi mostrar uma solução muito simples, que pode ser facilmente adaptada por qualquer um, e estilizada por quase todos.

Usando como base um campo, mga podemos na alisin ang rate ng personalizado, fazendo com que o select vire um fallback caso algo ocorra errado

Hakbang 1: Criando O Javascript (JQuery)

Criando O Javascript (JQuery)
Criando O Javascript (JQuery)

Huwag mag-motivate ng mga tao sa mga kagamitan sa Jquery, na mayroon ng mesmo se mostra bastante estável e muito produtivo.

Abaixo mostro comentado o que cada linha faz

// Seleciona os container lalagyan ng $ ('. Quest.content [data-element]'). Bawat isa (function (index, item) {// Recupera o seletor do input relacionado e os elementos var selector = $ (item).data ('element'), Stars_element = $ (''), select = $ (selector), options = select.find ('options'), napili = select.find ('options: select'); // Percorre as opções do piliin ang options.each (pagpapaandar (opsyon_index, pagpipilian) {// Adiciona uma estrela para cada opção var star = $ ('); stars_element.append (star); // Ao clicar na estrela star.on (' click ', function () {// Recupera o valor clicado var val = $ (ito).data ('halaga'); // Alisin ang isang mensahe atual piliin ang adiciona o da estrela clicada select.find ('opsyon'). attr ('napili', hindi totoo); select.find ('pagpipilian [halaga = "' + val + '"]'). attr ('napili', totoo); // Alisin bilang mga klase de seleção da estrela $ (Stars_element). hanapin ('. bituin'). alisin angClass ('napili'); var index = $ (ito).index (), elemento = $ (stars_element).find ('. star'); // Adiciona a seleção à estrela correspondente e bilang ante riores à ela para sa (i = 0; i <= index; i ++) {$ (stars_element).find ('. star: nth-child (' + (i + 1) + ')'). addClass ('napili'); }}); }); // Adiciona o elemento novo e alisin o antigo (piliin) select. After (stars_element); select.hide (); });

Hakbang 2: Trabalhando Com O CSS

Trabalhando Com O CSS
Trabalhando Com O CSS

Para sa iyo, o CSS ay madali. Mga Podemos na magagamit para sa mais maginhawa. Estrelas, quadrados, barras. Para sa iyo, maaari kang mag-isip ng mga isoladas. Ang mga Podemos utilizar estilos sem imagens, enfim, vai da kinakailangan ng cada um. O mahalaga aqui é que podemos modificar conforme precisamos.

.ratestar.stars.star {display: inline-block; lapad: 15px; taas: 15px; background: #fff url (../ mga imahe / sprite.png) -2px -134px walang ulit; margin-kanan: 3px; cursor: pointer; }

.ratestar.stars.star.selected {

background: #fff url (../ mga imahe / sprite.png) -23px -134px walang ulit; }

Hakbang 3: Conclusão

Ang mga ito ay nai-destinasyon para sa iyo na mag-bomber, at isang facilidade de uso é melhor ainda. Caso o usuário não tenha JS habilitado, ele ainda poderá utilizar o normalmente

Inirerekumendang: