Voici le problème, qui se produit uniquement dans Internet Explorer (IE). J'ai une page qui a des liens vers plusieurs types de fichiers. Les liens de ces fichiers exécutent une fonction Javascript qui ouvre une nouvelle fenêtre et charge le fichier spécifique. Cela fonctionne très bien, sauf si le fichier que j'ai besoin d'ouvrir dans la nouvelle fenêtre est un fichier PDF auquel cas la fenêtre est vide, même si l'URL est dans le champ d'adresse. Actualiser cette fenêtre en utilisant F5 n'aide pas. Toutefois, si je place le curseur dans le champ d'adresse et que j'appuie sur <enter>
, le PDF se charge immédiatement.IE ne chargera pas PDF dans une fenêtre créée avec window.open
Ce problème se produit uniquement dans IE. Je l'ai vu dans IE 7 et 8 et j'utilise Adobe Acrobat Reader 9. Dans Firefox (PC et Mac) tout fonctionne parfaitement. Dans Chrome (Mac), le PDF est téléchargé. Dans Safari (Mac) cela fonctionne. Dans Opera (Mac), il m'incite à ouvrir ou enregistrer. Fondamentalement, tout fonctionne probablement bien, sauf pour IE.
J'ai cherché des problèmes similaires et j'ai vu quelques messages où il a été suggéré d'ajuster certaines des options Internet sur IE. J'ai essayé ceci mais cela n'aide pas, et le problème n'était pas exactement le même de toute façon.
Voici la fonction Javascript que j'utilise pour ouvrir la nouvelle fenêtre.
function newwin(url,w,h) {
win = window.open(url,"temp","width="+w+",height="+h+",menubar=yes,toolbar=yes,location=yes,status=yes,scrollbars=auto,resizable=yes");
win.focus();
}
Vous pouvez voir que je passe dans l'URL, ainsi que la hauteur, h, et la largeur, w, de la fenêtre. J'ai utilisé une fonction comme celle-ci pendant des années et pour autant que je sache, je n'ai jamais eu de problème. J'appelle la fonction newwin()
en utilisant ceci.
<a href="javascript:newwin('/path/document.pdf',400,300)">document.pdf</a>
(Oui, je sais qu'il ya d'autres, de meilleures façons que d'utiliser en ligne JS, et je l'ai même essayé certains d'entre eux parce que je suis à court de choses à essayer, mais rien ne fonctionne.)
Donc, si quelqu'un a une idée de ce qui pourrait causer ce problème, j'aimerais l'entendre.
J'ai eu un problème similaire, après avoir appliqué votre solution, le pdf rend maintenant parfaitement bien. Pourriez-vous s'il vous plaît expliquer comment cela fonctionne? Est-ce la zone ou une certaine sécurité? Pourquoi ça ne marche pas quand j'utilise seulement window.open? – SoftwareGeek
Je suis assez sûr que c'est juste un bug dans l'implémentation d'IE (comme d'habitude). Si c'était un problème de sécurité, cela ne fonctionnerait pas du tout. –