Récemment, je fais des papiers et j'étais très qualifié. J'ai à nouveau conçu le Web et rencontré un problème. Dans le passé, lorsque j'ai conçu des pages Web, j'ai couru dans IE, et je n'ai jamais envisagé Firefox, sans parler de Chrome, mais maintenant c'est différent. Au moins, je pense que les pages Web qui ne sont pas compatibles avec Firefox sont extrêmement laides et contrefaites, donc à partir de ce concept, j'ai commencé à prêter attention à cette compatibilité lors de la conception de la page. Cette fois, j'ai rencontré un problème de compatibilité. Il y a un cadre flottant dans le HTML, <frame>, qui peut être intégré dans la page, qui est très adapté pour fabriquer la page de trame, comme indiqué dans la figure ci-dessous.
Une page HTML est divisée en deux pièces, avec la barre de navigation à gauche et le contenu à afficher à droite. Le code est le suivant:
Le code de la colonne de gauche est:
<Iframe frameborder = 0 id = frmtitleleft name = frameleft src = left.html style = hauteur: 100%; Largeur: 180px;>
Connectez-vous à gauche.html
La colonne de droite est similaire. Pour la page que j'ai faite, l'effet d'aperçu est le suivant:
Quel effet devrait être réalisé maintenant pour obtenir un effet plus pratique? Cliquez sur n'importe quel lien peut être affiché dans la colonne de droite. Il est évident qu'il doit être mis en œuvre via JS. Je ne dirai pas grand-chose sur la méthode incompatible originale. N'oubliez pas les étapes de mise en œuvre suivantes:
1. Obtenez d'abord l'objet iframe sur la colonne de droite
var frames = document.getElementById (frameid); // frameid est le nom d'ID de l'Iframe dans la colonne de droite
2. Réinitialisez sa valeur SRC
frames.src = pageurl; // pageurl est la page de destination à afficher
Cela permet un saut de page
Mais il y a un autre point, si vous voulez appeler les fonctions, ce n'est pas si simple
Par exemple, il y a une fonction droite () dans la colonne de droite. Je souhaite appeler la fonction droite () dans le lien de la colonne de gauche. Comment l'implémenter
1. Tout d'abord, la gauche est intégrée dans l'index de la page de conteneur.html, vous devez donc revenir au niveau d'index en premier et obtenir l'objet de la froire
var frames = window.parent.window.document.getElementById (frameid);
2. Pour pouvoir exécuter des fonctions dans sa page, vous devez obtenir l'objet Window. Voici un objet important, ContentWindow. Obtenez cet objet, puis vous pouvez exécuter les fonctions dedans, telles que
Frames.ContentWindow.Right ();
Le code ci-dessus est compatible avec IE6, Firefox3 et Chrome 2.0. Ils ont tous réussi le test. IE7 ne l'a pas essayé, mais cela ne devrait pas être un problème.