Jump to content

Navigation à Facette Prestashop 1.6.0.6 liste déroulante problème


Recommended Posts

Bonjour, je rencontre plusieurs soucis lors de l'utilisation de la navigation à facette en mode "liste déroulante" sur firefox, sur internet explorer ca ne fonctionne carrement pas.

 

Sous Firefox: Quand je clique sur la liste déroulante rien ne se passe, il faut que je laisse le clique de la souris appuyé afin de descendre pour pouvoir selectionner une caracteristique...

 

Sous IE: Le mode "Liste déroulante" s'affiche normalement et le clique se passe normalement, par contre rien ne se passe au niveau du filtre... aucun filtre n'est effectué.

 

Sur Android, meme problème que sur firefox il faut laisser le doigt sur l ecran et le faire glisser vers un choix quand ca veut bien s'afficher et ne pas se refermer à peine apres l'avoir effleuré...

 

Je précise, j'éffectue un filtre avec des caractéristique dans la navigation à facette.

 

Avez vous rencontré ce problème, va t'il y avoir une mise à jour?

 

Merci d'avance

 

 

Link to comment
Share on other sites

  • 1 month later...

Bonjour, je rencontre plusieurs soucis lors de l'utilisation de la navigation à facette en mode "liste déroulante" sur firefox, sur internet explorer ca ne fonctionne carrement pas.

 

Sous Firefox: Quand je clique sur la liste déroulante rien ne se passe, il faut que je laisse le clique de la souris appuyé afin de descendre pour pouvoir selectionner une caracteristique...

 

Sous IE: Le mode "Liste déroulante" s'affiche normalement et le clique se passe normalement, par contre rien ne se passe au niveau du filtre... aucun filtre n'est effectué.

 

Sur Android, meme problème que sur firefox il faut laisser le doigt sur l ecran et le faire glisser vers un choix quand ca veut bien s'afficher et ne pas se refermer à peine apres l'avoir effleuré...

 

Je précise, j'éffectue un filtre avec des caractéristique dans la navigation à facette.

 

Avez vous rencontré ce problème, va t'il y avoir une mise à jour?

 

Merci d'avance

J'ai le même problème, mes listes déroulantes ne fonctionnent pas au niveau de la navigation à facette...

 

Si quelqu'un a une solution...

 

*Up*

Link to comment
Share on other sites

  • 3 weeks later...
  • 2 weeks later...

Je peux peut être vous aider ! J'ai résolu le problème en faisant quelques modifs sur le fichier blocklayered.js.

 

J'ai remplacé ce morceau de code (qui actualisé la page dès que l'on touché à la liste déroulante) : 

 

$(document).on('click', '#layered_form .select', function(e) {

reloadContent();
});
 
par :
 
$(document).on('click','#layered_form .select', function(e) {
 
 
if(fake==0){
if($(this).val()!=""){
reloadContent();
fake=fake+1;
stock=$(this).val();
 
}
}
else if(fake>0){
if($(this).val()!=stock){
reloadContent();
 
fake=0;
}
}
});

 

J'ai ajouté une variable fake que j'ai initialisé à 0 au début du code. Quand on click sur la liste pour la première fois, fake prend la valeur 1 et c'est quand on click une deuxième fois (quand on choisit une valeur dans la liste) que la page se rafraîchit (en réinitialisant la variable fake).

 

Ce code est peut être archaïque pour un bon développeur java mais je n'ai pas trouvé d'autre solution. J'espère avoir aidé. Bonne continuation à vous. 

Link to comment
Share on other sites

Bonjour, et merci pour cet essai de solution. J'avais déjà vu ce genre de solution, mais je suis sous la 1.11 du blocklayered, et ce bout de code n'existe plus. il a été remplacé par 

// Click on checkbox
$('#layered_form input[type=checkbox], #layered_form input[type=radio], #layered_form select').live('change', function()
{
reloadContent();
});
 
et cela ne change rien! argh, je m'arrache les cheveux!
Edited by zeka35000 (see edit history)
Link to comment
Share on other sites

  • 1 month later...

Bonjour,

 

Je suis sous la version 2.0.4 de blocklayered et grace à vos pistes j'ai réussi à régler ce problème de clique défectueux sur les listes déroulantes.

Dans le fichier blocklayered.js évoqué plus tôt, j'ai remplacé le code (chez moi, ligne 44) :

$(document).on('click', '#layered_form .select, #layered_form input[type=checkbox], #layered_form input[type=radio]', function(e) {

	reloadContent(true);
});
par

$(document).on('click', '#layered_form input[type=checkbox], #layered_form input[type=radio]', function(e) {

	reloadContent(true);
});
En clair, j'enlève le '#layered_form .select,'.

 

ET j'ai ajouté à la fin du "ready", l'écouteur pour le "change" des "select" (chez moi, lignes 139 à 142), comme ci-dessous :

$(document).off('change').on('change', 'select[name=n]', function(e)
{
	$('select[name=n]').val($(this).val());
	reloadContent(true);
});

$(document).on('change', '#layered_form .select', function(e) {

	reloadContent(true);
});

paginationButton(false);
initLayered();

On est obligé de mettre ce bout de code après le :

$(document).off('change')...
sinon ça ne fonctionne pas !!

 

En espérant que cela aidera quelqu'un ;p

Edited by eenov (see edit history)
  • Like 2
Link to comment
Share on other sites

Bonjour

 

J'ai la même version et le même problème mais après avoir essayé, j'ai dû accepter l'évidence ça ne fonctionne pas pour moi , j'ai la même roue qui tourne sans pouvoir cliquer les valeurs ?

l’idéal même serai de pouvoir remplir toutes les valeurs désirées dans chaque caractéristique choisie et avoir un bouton de validation à la fin serai le top .Une idée peut=être.

D'autant que j'ai un problème double je n'arrive pas a valider mes caractéristiques dans mes produits et ne sait ou chercher.

Si vous avez une solution pour m'aider serai super.

Link to comment
Share on other sites

  • 1 month later...

Bonjour,

 

Même problème avec les listes déroulantes qui se ferment aussitôt après un clic sous android.

Le problème vient du plugin jQuery "uniform".

Il suffit de le désactiver en ajoutant ce code dans le fichier "global.js" de votre thème :

 

// désactivation uniform 
(function($) {$.fn.uniform = function() {return this;};})(jQuery);
 
Mettez-le dans la fonction $(document).ready
 
$(document).ready(function(){

     ...

     // désactivation uniform 
     (function($) {$.fn.uniform = function() {return this;};})(jQuery);
});

 

N'oubliez-pas de vider le cache (paramètres avancés > performances) après cette modif.

Edited by funsoleil (see edit history)
Link to comment
Share on other sites

merci à EENOV

 

Bonjour,
 
Je suis sous la version 2.0.4 de blocklayered et grace à vos pistes j'ai réussi à régler ce problème de clique défectueux sur les listes déroulantes.
Dans le fichier blocklayered.js évoqué plus tôt, j'ai remplacé le code (chez moi, ligne 44) :

$(document).on('click', '#layered_form .select, #layered_form input[type=checkbox], #layered_form input[type=radio]', function(e) {

	reloadContent(true);
});
par
$(document).on('click', '#layered_form input[type=checkbox], #layered_form input[type=radio]', function(e) {

	reloadContent(true);
});
En clair, j'enlève le '#layered_form .select,'.
 
ET j'ai ajouté à la fin du "ready", l'écouteur pour le "change" des "select" (chez moi, lignes 139 à 142), comme ci-dessous :
$(document).off('change').on('change', 'select[name=n]', function(e)
{
	$('select[name=n]').val($(this).val());
	reloadContent(true);
});

$(document).on('change', '#layered_form .select', function(e) {

	reloadContent(true);
});

paginationButton(false);
initLayered();
On est obligé de mettre ce bout de code après le :
$(document).off('change')...
sinon ça ne fonctionne pas !!
 
En espérant que cela aidera quelqu'un ;p

 

Pour moi ça a tres bien fonctionné (a quelques lignes pres c'est tout a fait ça)

Edited by lescrocs (see edit history)
Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,

 

Je suis sous la version 2.0.4 de blocklayered et grace à vos pistes j'ai réussi à régler ce problème de clique défectueux sur les listes déroulantes.

Dans le fichier blocklayered.js évoqué plus tôt, j'ai remplacé le code (chez moi, ligne 44) :

$(document).on('click', '#layered_form .select, #layered_form input[type=checkbox], #layered_form input[type=radio]', function(e) {

	reloadContent(true);
});
par

$(document).on('click', '#layered_form input[type=checkbox], #layered_form input[type=radio]', function(e) {

	reloadContent(true);
});
En clair, j'enlève le '#layered_form .select,'.

 

ET j'ai ajouté à la fin du "ready", l'écouteur pour le "change" des "select" (chez moi, lignes 139 à 142), comme ci-dessous :

$(document).off('change').on('change', 'select[name=n]', function(e)
{
	$('select[name=n]').val($(this).val());
	reloadContent(true);
});

$(document).on('change', '#layered_form .select', function(e) {

	reloadContent(true);
});

paginationButton(false);
initLayered();
On est obligé de mettre ce bout de code après le :

$(document).off('change')...
sinon ça ne fonctionne pas !!

 

En espérant que cela aidera quelqu'un ;p

 

Bonjour et merci!!!!

Pour moi ça marche j'ai due modifier le fichier blocklayered.js de mon theme

themes/default-bootstrap/js/modules/blocklayered/blocklayered.js

Link to comment
Share on other sites

  • 10 months later...

bonjour,

 

J'ai touvé une solution beaucoup plus facile pour les débutants comme moi :D  : il suffit de remplacer le fichier themes/default-bootstrap/js/modules/blocklayered/blocklayered.js par le méme fichier de la version 1.6.1.1 de prestashop : resultat super B)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...