web-dev-qa-db-fra.com

PDF embed ne fonctionne pas dans IE11, mais fonctionne lors de la modification du code HTML dans DOM Explorer (F12 - outil de débogage d’IE)

Voici le lien Fiddle "http://jsfiddle.net/Z99gr/2/" semblable à mon code, j'ai créé un curseur Image à l'aide de Galleriffic. Dans le curseur d'image avec les images que je montre PDF intégré.

Le lien Fiddle et le curseur de mon image fonctionnent correctement dans Chrome et Firefox, mais dans IE, ils ne se chargent pas. Je teste dans IE 11

Dans IE, lorsque j'ouvre "DOM Explorer (F12 - outil de débogage d'IE)" et que je sélectionne le <div> qui contient la balise <embed> pour PDF, il affiche le code ci-dessous.

   <div id="pdf">
        <embed width="500" height="375" src="https://www.Adobe.com/products/pdfjobready/pdfs/pdftraag.pdf" type="application/pdf">
        </embed>
    </div>

Et quand je modifie simplement quelque chose dans cette balise HTML dans "l'explorateur DOM (F12 - outil de débogage d'IE)", il charge le PDF.

C'est une nature très étrange de ce problème.

Je ne comprends pas comment résoudre ce problème.

Veuillez suggérer!

J'obtiens en dessous des résultats inm IE11:

enter image description here

Où les résultats devraient ressembler à ceci (c'est une capture d'écran de Chrome):enter image description here

7
UID

Je pouvais maintenant intégrer le fichier PDF IE en utilisant la balise "<iframe>".

J'ai remplacé les balises "<object>" et "<embed>" par <iframe> et il fonctionne parfaitement avec les 3 navigateurs, Firefox, Chrome et IE.

Il y a 2 façons d'intégrer PDF dans IE.

1ère voie: Appelez PDF directement au <iframe> 

Ci-dessous le code mis à jour:

<div id="pdf">
   <iframe src="https://www.Adobe.com/products/pdfjobready/pdfs/pdftraag.pdf" style="width: 100%; height: 100%;" frameborder="0" scrolling="no">
        <p>It appears your web browser doesn't support iframes.</p>
   </iframe>
</div>

2ème manière: si le navigateur ne dispose pas du lecteur PDF, vous pouvez appeler un code HTML dans la page <iframe> qui contient <object> balise.

Ci-dessous le code pour la 2ème option

    <div id="pdf">
          <iframe src="pdf.html" style="width: 100%; height: 100%;" frameborder="0" scrolling="no">
               <p>It appears your web browser doesn't support iframes.</p>
          </iframe>
   </div>

Code pour "pdf.html"

<body>
    <object data="lorem.pdf" type="application/pdf">
        <p>It appears you don't have Adobe Reader or PDF support in this web browser. <a href="lorem.pdf">Click here to download the PDF</a>. Or <a href="http://get.Adobe.com/reader/" target="_blank">click here to install Adobe Reader</a>.</p>
       <embed src="lorem.pdf" type="application/pdf" />
    </object>
</body>

Cela a fonctionné pour moi !!!

Voici le Fiddle WORKING: http://jsfiddle.net/Z99gr/9/

J'espère que cela sera utile pour les autres à l'avenir!

19
UID

Trouvé un correctif qui a fonctionné pour moi ...

J'utilisais IE11, Win7 Enterprise et la dernière version d'Adobe Reader XI que je venais de mettre à jour.

Le site Web avec lequel je rencontrais un problème utilisait <object> </object> pour effectuer l'intégration PDF (il s'agissait d'un composant CQ5, si cela comptait).

Je n'ai pas eu à modifier le code HTML - voici ce que j'ai fait:

1) Aller aux options Internet dans IE

2) Aller à avancé

3) Cliquez sur "Réinitialiser ...". J'ai également cliqué sur "Supprimer les paramètres personnels" car j'utilise principalement IE pour tester le développement Web, de sorte qu'il n'y ait pas grand-chose là-bas ...

4) Nécessite un redémarrage de l'ordinateur, alors faites-le.

5) Lorsque vous êtes de retour, ouvrez IE11. 

6) Il vous demandera si vous souhaitez utiliser ses paramètres/accélérateurs par défaut. J'ai dit OUI (j'ai l'habitude de toujours dire NON, jadis).

7) Ouvrir le site et réussir.

Cet exemple de site a également été corrigé pour moi, je sais donc que quelque chose de positif est arrivé . http://acroeng.Adobe.com/Test_Files/browser_tests/embedded/embed2.html

J'ai essayé de faire le correctif "TabProcGrowth" dans le registre (une autre solution que j'ai trouvée précédemment), mais cela n'a pas fonctionné non plus. Réinitialiser uniquement IE en scratch a fonctionné pour moi.

0
Ralph N

Toute personne confrontée à ce problème à l'avenir devra désactiver le mode de compatibilité pour les sites intranet.

Outils> Paramètres d'affichage de compatibilité> Décochez la case "Afficher les sites intranet dans l'affichage de compatibilité".

Les outils de développement remplacent la vue de compatibilité et affichent la page dans IE11. La compatibilité rend la page affichée en tant que IE5

0
Ben