Lors de la conception du flux de dialogue de Firefox, vous prévoyez d'utiliser la boîte de dialogue contextuelle pour ajouter des pages et modifier les pages. Lorsque l'ajout et la modification sont terminés, cliquez sur Soumettre la boîte de dialogue pour fermer, puis actualiser la fenêtre de la liste. Vous trouverez ci-dessous l'éditeur de la mauvaise chaîne de nouvelles technologies pour vous apprendre à rédiger une boîte de dialogue Firefox appropriée. Allons à l'article suivant pour en savoir plus!
Cependant, un problème s'est produit pendant le fonctionnement réel. La technologie de la boîte de dialogue d'IE ne prend pas en charge Firefox. Comment pouvons-nous réaliser une boîte de dialogue qui prend en charge IE et Firefox?
Heureusement, j'étudiais TinyMCE hier, et il y a des boîtes de dialogue qui soutiennent Firefox à apprendre.
J'ai écrit la méthode pour ouvrir la boîte de dialogue:
fonction popupdialog (URL, largeur, hauteur) {
// showx = event.screenx - event.offsetx - 4 - 10; // + deltax; Ce code n'est valable que pour IE et n'est plus utilisé
// showy = event.screeny - event.offsety -168; // + deltay; Ce code n'est valable que pour IE et n'est plus utilisé
var x = parseInt (écran.width / 2.0) - (largeur / 2.0);
var y = parseInt (screen.height / 2.0) - (hauteur / 2.0);
var ismsie = (Navigator.AppName == "Microsoft Internet Explorer"); // Juge Browser
if (ismsie) {
retval = window.showmodaldialog (URL, fenêtre, "Dialogwidth:" + width + "px; dialogneight:" + height + "px; dialogleft:" + x + "px; dialogtop:" + y + "px; status: non; répertoires: oui; scrollbars: non; revizable = non;");
} autre {
var win = window.open (url, "mCepopup", "top =" + y + ", left =" + x + ", scrollbars =" + scrollbars + ", dialog = oui, modal = oui, width =" + width + ", height =" + height + ", resizable = no");
eval ('try {win.resizeto (largeur, hauteur);} catch (e) {}');
win.focus ();
}
}
Dans la boîte de dialogue ouverte, j'ai utilisé la page de la division supérieure et inférieure des cadres, car dans IE, la boîte de dialogue ne peut pas être soumise, mais après avoir été divisée en cadres, il peut être soumis.
Sur le bouton soumis, ajoutez ce code:
fonction doreload () {
var ismsie = (Navigator.AppName == "Microsoft Internet Explorer");
if (ismsie) {
parent.dialogarguments.location.reload ();
}autre{
parent.opener.Document.Location.reload ();
}
top.close ();
}
La façon dont les deux navigateurs ouvrent les boîtes de dialogue est différente
C'est-à-dire: window.showmodaldialog (URL, fenêtre, "DialogWidth: 300px; DialogHeight: 300px; dialogleft: 200px; dialogtop: 200px; status: non; répertoires: oui; barre de scroll: non; resizable = non;");
Firefox: Window.open (URL, "mCepopup", "TOP = 200, gauche = 200, barre de défilement = non, dialogue = oui, modal = oui, largeur = 300, hauteur = 300, résidable = non");
Lors de la fermeture de la fenêtre:
C'est-à-dire: parent.dialogarguments.location.reload ();
Firefox: parent.opener.Document.Location.reload ();
Il y a un autre point très important à qui faire attention. Firefox ne semble pas prendre en charge la fenêtre.close () des boîtes de dialogue;
Par conséquent, la dernière utilisation de la fenêtre de fermeture est supérieure.close (); IE et Firefox Support.
Ce qui précède est une boîte de dialogue qui vous apprend à écrire un Firefox approprié. Pour plus de contenu, veuillez continuer à prêter attention à d'autres articles connexes sur la mauvaise chaîne de nouvelles technologies!