le positionnement de l'invite de popup en javascript
j'ai un javascript invite comme la suivante et j'aimerais apporter à l'invite du centre de l'écran. Comment faire cela en utilisant javascript?
function showUpdate() {
var x;
var name=prompt("Please enter your name","");
if ( name != null ) {
x="Hello " + name + "! How are you today?";
alert("Input : " + name );
}
}
Et c'est comme ça que j'appelle ce :
<a onclick = "showUpdate() " style="vertical-align: middle;" class="parent" href=""><span>5. Missed P/U Comments</span></a>
il fonctionne à trouver si l'on excepte l'invite de commandes va dans le coin gauche en IE
et au centre Firefox
mais j'ai besoin de la même solution pour travailler dans les deux navigateurs.
DIEU seul peut vous aider avec IE
Ce que je crains ne peut pas être fait. Nous n'avons aucun contrôle sur l'endroit où le navigateur lieux de l'alerte!
Vous ne pouvez pas positionner le natif de boîtes de dialogue, je le crains. Avez-vous songé à l'aide de la jQuery boîte de Dialogue à la place?
Ce que je crains ne peut pas être fait. Nous n'avons aucun contrôle sur l'endroit où le navigateur lieux de l'alerte!
Vous ne pouvez pas positionner le natif de boîtes de dialogue, je le crains. Avez-vous songé à l'aide de la jQuery boîte de Dialogue à la place?
OriginalL'auteur Java Questions | 2012-12-27
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas personnaliser ou la position par défaut javascript invite. Cochez cette SORTE de réponse pour les solutions de contournement.
Comment personnaliser le JavaScript invite?
OriginalL'auteur ryadavilli
Invites, des alertes, et confirme sont les fonctions de base que chaque navigateur a sa propre façon d'afficher à l'utilisateur. Il n'y a vraiment aucune raison que vous devriez vouloir pour personnaliser ces fonctions, soit.
Si vous voulez vraiment des fonctionnalités avancées et une personnalisation complète, vous aurez à faire votre propre alerte personnalisée. Vous pouvez le faire de plusieurs manières. L'une des deux options que je vous suggère est la création de deux divs (celle qui ne s'efface pas le reste de la page et celui qui apparaît comme une alerte) en Javascript et les utiliser comme une pseudo-invite. La deuxième est de créer une nouvelle fenêtre, supprimer un grand nombre de ses fonctionnalités et de modifier le code HTML sur la nouvelle page ouverte pour le faire ressembler à quelque chose comme une alerte.
Je me sens comme la dernière est vraiment trop bien. Si vous voulez une invite de commandes, ils sont moches... Sinon, vous aurez besoin de faire quelque chose de vous-même avec une positionné div et fondu d'arrière-plan.
OriginalL'auteur jeremy
prompt
(et son cousinalert
) sont très anciens. Vous n'avez aucun contrôle sur leur apparence ou de la position. C'est surtout mieux pour les éviter.Au lieu de cela, vous pouvez faire un message à l'aide d'un positionnement absolu
div
(ou de tout autre élément de bloc), qui non seulement vous donne le plein contrôle sur sa position, mais plein de style. Si vous regardez autour, vous trouverez des dizaines d'exemples de le faire, et des kits pour elle, il n'y a pas besoin de rouler à moins que vous voulez vraiment.Quelle que soit la façon dont vous finissez par faire, votre logique à l'aide, il va devoir changer, parce que
prompt
est synchrone (tous les script sur la page vient à un arrêt brutal et attend l'invite de commandes), tandis que les modernes façons de le faire sont asynchrones (orienté événement). Ainsi, par exemple, votre nouveau code pour à l'aide de le popup pourrait ressembler à ceci:C'est l'incapacité de style, les incohérences, et le fait qu'ils apportent tous les JavaScript sur la page à un arrêt brutal plus de l'époque, avec quelques cas isolés, cela rend la vie particulièrement désagréable.(Par exemple, ils s'arrêtent tous les JavaScript sur la page sur Firefox sauf pour l'ajax d'achèvement gestionnaire d'appels, ce qui signifie que vous pouvez être au milieu d'une fonction JavaScript suspendu par un
prompt
/alert
, et une autre de vos fonctions JavaScript appelé par Firefox -- dans le hypothétiquement single-threaded JS environnement du navigateur. (Et c'est juste un fil, mais...)Ah, je ne pense pas que le "thread". Merci!
Et l'aléatoire downvote serait...pourquoi? Comment est-ce "pas utile"?
Apparemment, quelqu'un est un grand fan de
alert
OriginalL'auteur T.J. Crowder
Vous ne pouvez pas repositionner
window.alert()
, mais vous pouvez le faire avecwindow.showModalDialog()
comme décrit dans cette page: http://bytes.com/topic/javascript/answers/849283-change-position-alert-possiblehttps://developer.mozilla.org/en-US/docs/DOM/window.showModalDialog
OriginalL'auteur techfoobar