Którego tagu najlepiej użyć w moim pliku HTML, gdy chcę wyświetlić przeglądarkę Adobe PDF?
W tej chwili używam poniższego kodu, ale są dziwne efekty uboczne (np. Wydaje się, że kradnie fokus początkowy, który ustawiłem na inne <input>
pole tekstowe; nie wydaje się działać dobrze z klasą jQueryUI Resizeable; itp.)
<embed src="abc.pdf" type="application/pdf" />
Czy mógłbym zrobić to samo z <object>
tagiem? Czy są zalety / wady używania jednego tagu w porównaniu z drugim?
<embed>
jest teraz oficjalnie standardowym tagiem z HTML5, ale powinieneś spodziewać się przynajmniej niektórych problemów ze zgodnością ze starszymi wersjami przeglądarek.Odpowiedzi:
OBJECT a EMBED - dlaczego nie zawsze używać osadzania?
object
to bieżący standardowy znacznik do umieszczania czegoś na stronie.embed
została uwzględniona przez Netscape (wzdłużimg
) zanim cokolwiek jakbyobject
były na w3c umysłu.W ten sposób dołączasz plik PDF z
object
:Jeśli naprawdę potrzebujesz, aby wbudowany plik PDF był wyświetlany w prawie każdej przeglądarce, co rozumieją starsze przeglądarki,
embed
ale nieobject
, musisz to zrobić:Ta wersja nie sprawdza poprawności .
źródło
<embed>
jest częścią standardu HTML5, wydaje mi się, że<object>
jest to lepszy wybór ze względu na kompatybilność ze starszymi przeglądarkami i możliwość wyświetlania alternatywnych treści. Myśli?Kilka innych opcji:
źródło
Możesz także użyć metody iframe, chociaż nie jest to kompatybilne z różnymi przeglądarkami (np. Nie działa w Chrome lub Android i prawdopodobnie inne -> zamiast tego wyświetla monit o pobranie). Działa z dataURL i normalnymi adresami URL, nie jestem pewien, czy inne przykłady działają z dataURLS (daj mi znać, czy inne przykłady działają z dataURLS?)
źródło
Prawdopodobnie najlepszym rozwiązaniem w różnych przeglądarkach do wyświetlania plików PDF na stronach internetowych jest użycie kodu projektu Mozilla PDF.js, można go uruchomić jako usługę node.js i używać w następujący sposób
Samouczek dotyczący korzystania z pdf.js można znaleźć w tym artykule na blogu ejectamenta
źródło
Osadzenie nie jest standardowym tagiem, chociaż obiekt tak. Oto artykuł, który wygląda na to, że pomoże ci, ponieważ wygląda na to, że sytuacja nie jest taka prosta. Dołączono przykład pliku PDF.
źródło