Re-positionnement de Jquery UI Autocomplete Zone de Résultats
j'utilise le plugin jQuery UI Autocomplete pour un outil simple de suggestion de termes de recherche. Il fonctionne sans problème sauf que je ne peux pas déplacer la boîte de résultats. Je dois essentiellement le déplacer de 20 pixels à gauche et 4 pixels vers le bas. J'ai essayé d'écraser le jQuery UI CSS, mais n'ai pas été en mesure de repositionner la boîte.
toute aide d'une personne expérimentée dans ce domaine serait grandement appréciée.
4 réponses
Voici une façon de le faire, en puisant dans le open
événement et de changer la position du menu lorsque cet événement se produit:
$("#autocomplete").autocomplete({
appendTo: "#results",
open: function() {
var position = $("#results").position(),
left = position.left, top = position.top;
$("#results > ul").css({left: left + 20 + "px",
top: top + 4 + "px" });
}
});
j'utilise aussi le appendTo
option pour faire trouver le ul
qui contient le menu facilement. Vous pourriez le faire sans cette option.
Voici un exemple: http://jsfiddle.net/9QmPr/
cela peut être facilement réalisé via le position
option, plus précisément le offset
propriété:
$('#myField').autocomplete({
source: …,
position: {
offset: '20 4' // Shift 20px to the left, 4px down.
}
});
quelque Chose comme ce serait trop de travail
open : function(){
$(".ui-autocomplete:visible").css({top:"+=5",left:"-=2"});
},
Il semble préférable d'utiliser cette option,
appendTo: "#autocomplete_target_wrapper",
menudocking: {
menucorner: "right top",
inputcorner: "right bottom",
collision: "none"
}
lien Officiel https://forum.jquery.com/topic/autocomplete-menu-docking-position