Remplacer jQuery UI Datepicker div visible étrangement sur la première page de la charge.
Quelque chose d'étrange à pied, ici:
Une instance de Datepicker est de se manifester dans un étrange endroit que d'une seule barre dans le coin supérieur gauche de cette page.
Je suis en utilisant à la fois jQuery UI Datepicker et de l'Accordéon sur une page. Dans le CSS de l'INTERFACE utilisateur, le display:none
pour Datepicker semble être remplacée par la display:block
pour l'Accordéon, du moins d'après Firebug (voir img ci-dessous).
Puis, une fois le Datepicker de déclenchement est cliqué dans la restauration/salle de spectacle " tab " (cliquez sur l'un des boutons de montrer div avec Datepicker), la display:none
semble que de travailler.
Voici ce que le mauvais div ressemble:
et voici le panneau Firebug:
- Même problème; voir i.imgur.com/vNukO.gif et i.imgur.com/SciCa.gif. Avez-vous travailler?
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème et alors que certains de ces solutions ne fonctionne, la méthode la plus simple de réparer tout est à ajouter ceci dans votre css:
Fondamentalement, ce masque à la réorganisation de la datepicker élément lorsqu'il ne peut pas être appliqué à un élément invisible. Vous le cacher, mais il sera initialisé lorsque vous cliquez sur un élément qui doit afficher le datepicker. Sur la ré-initialisation, le datepicker de l'élément avec l'id
#ui-datepicker-div
aura la bonne position.Le problème pourrait être que vous êtes de liaison du datepicker pour quelque chose qui n'est pas visible, cela expliquerait l'étrange positionnement (en essayant de décalage à partir de quelque chose qui n'existe pas va dégénérer à la compensation de (0, 0)). Le datepicker
<div>
devrait avoir au moins une table à l'intérieur alors peut-être le datepicker est de se confondre et de lancer une exception avant la fin de son initialisation. Lorsque vous cliquez sur un de la borne d'entrées, il est probablement l'initialisation de lui-même à nouveau (ou au moins correctement la finition de l'initialisation) et tout fonctionne bien après.Essayer de liaison du datepicker lorsque la date d'entrée devient visible:
$(".date_picker").datepicker({ disabled: false });
id="cater"
à<input type="text" name="cater"/>
$('#cater').datepicker();
lors de la "réserve de la salle de spectacle" le bouton est pressé.Si cela fonctionne, alors vous auriez à ajouter similaire hacks pour d'autres datepickers. Si cela ne fonctionne pas alors je me suis probablement mal. Si mon hypothèse s'avère être à droite, puis vous pouvez signaler un bug pour le jQuery-UI les gens.
BTW, dans Safari, je ne peux voir les deux premiers onglets, j'ai dû passer à Firefox pour voir la "restauration" de l'onglet. Curieusement il fonctionne très bien sur Chrome. C'est probablement sans rapport, mais j'ai pensé que je voulais te le dire de toute façon.
<li>
que, ainsi, les éléments de la liste. Obtenu toutes les suggestions?<div>
deux fois et l'imbrication est d'obtenir foiré, les différents navigateurs fera différentes suppose que lorsque vous essayez de réparer les choses. J'avais essayer de tirer le contenu des panneaux, qui va vous donner l'onglet/panneau de structure; puis commencer à les mettre sur le panneau arrière de contenu jusqu'à ce qu'elle casse. Que vais au moins de savoir d'où la confusion.<div>
tag. Fonctionne comme un charme, maintenant. Merci de vous en soucier...Le problème est réduit à l'élément le datepicker est " lié " à ne pas être encore disponibles.
La solution que j'ai trouvé était à initalize le datepicker quand l'élément a été cliqué et ensuite le montrer tout de suite après initalization. Cela garantit l'élément est disponible avant le datepicker a été affectée et initalized.
....
Dans mon cas, j'utilise la session "$(document).ready(function(){" de JQuery en ma faveur.
Comme j'ai un fichier JavaScript qui est chargé de toutes les pages de mon système, je viens d'ajouter la ligne suivante sur elle.
Pour moi, il semble clair et élégant solution parce que je n'ai pas à changer sa bibliothèque.
Le meilleur de tous, il fonctionne très bien sur tous les navigateurs. 🙂
J'ai eu un problème similaire dans google Chrome, et je l'ai résolu d'édition
jquery-ui1.7.2.custom.css
à partir de:
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
à:
Il y a probablement trop de neuf pour Chrome.
Essayez de déplacer le dernier bloc en bas de la page (juste avant de fermer la balise body). Vous pouvez lire plus au sujet de pourquoi vous voulez le faire ici:
http://webdevel.blogspot.com/2008/09/place-javascript-code-at-bottom-of-page.html
BTW: bonne idée pour un menu. Je l'aime.
Parfois, il a à voir avec le z-index de l'autre élément sur la page étant plus élevé. Réglage de la z-index à un nombre très élevé résolu mon problème.