Question

J'utilise autocomplete de jQuery UI sur mon site, et cela fonctionne très bien, mais je suis la refonte du système, donc je dois faire ce seul changement. À l'heure actuelle, la saisie semi-automatique ouvre sur le fond de l'entrée. Cependant, je ne peux pas le forcer à une position personnalisée, ni avec jQuery ou CSS.

J'ai essayé ceci:

    $('#search').autocomplete('widget').css({
        'margin-left': -200
        //or
        left: 200
    });

J'ai aussi essayé d'ajouter! Important de lLa règles, mais aucun effet.

Je l'ai également essayé d'ajouter à .ui-css autocomplete, sans aucun résultat.

Il semble que lorsque la boîte ouvre, elle écrasera tous ces changements. Toute idée à ce sujet? Je suis vraiment dans le besoin d'une solution.

Merci, Lainé Martti

Était-ce utile?

La solution

Vous pouvez fournir une fonction en option pour open () pour faire ceci:

Exemple:

 $("#search").autocomplete({ 
                            open: function(event, ui) 
                                  {$(this).next().css('left',
                                    function(index, value) {return 200+parseInt(value)});
                                  }
    });

... va définir la position à 200px gauche de la position qu'il aurait été normalement

Autres conseils

Mon autocomplete ouvre à la fin du DOM. Pas du tout près de l'entrée de déclenchement ... Je pense à regarder l'indice de déclenchement d'entrée, puis trouver l'indice correspondant de la saisie semi-automatique, mais je ne sais pas pourquoi- son ne semble pas assez robuste pour moi.

Comme NeoSwf, je trouve que mon autocomplete était inséré près du fond du DOM. Selon $(this).next() pour le trouver est fragile. Au lieu de this, je recommande d'utiliser quelque chose de plus spécifique comme 'ul.ui-autocomplete'. Voici le CoffeeScript pour ma version:

jQuery ->
  $('#search').autocomplete
    open: (event, ui) ->
      $('ul.ui-autocomplete').css('left', (index, value) ->
        return 200 + parseInt(value))
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top