2014-03-11 2 views
1

В событии click я хочу сделать PDF внутри элемента, и я добавляю его в тег object.Как я могу заставить PDF скачать как резерв?

Как резерв для старых браузеров, я хотел бы, чтобы PDF-файл загружался автоматически. Вот что я работаю с

<div class="selected"> 
    <object data="loader-resources/doc.pdf" type="application/pdf" class="loaded" width="100%" height="100%"> 
    <p class="error">Your browser cannot display pdf within a website.</p> 
    </object> 
</div> 

Я не могу сделать это на стороне сервера, с помощью Content Disposition в моем заголовке HttpResponse, как он направляет here, потому что я хочу, чтобы PDF, чтобы сделать на странице, если пользователя браузер поддерживает его.

Любые идеи?

+0

бы [PDFObject] (http://pdfobject.com/) быть подходящее решение? JS-based и не работает на Mobile, но я тестировал его еще в IE 6 в BrowserStack. На iOS 6 (и, предположительно, на других ОС, которые не поддерживают этот метод), он дает пользователю возможность загрузить PDF-файл на iOS, это просто откроет его в новой вкладке Safari. Или как насчет [PDF.js] (http://mozilla.github.io/pdf.js/), который построен Mozilla. Однако в IE 6/7/8 он сломан, поэтому он не решает вашу оригинальную проблему. Наконец, [yepnope.js] (http://yepnopejs.com/) может помочь с условной загрузкой. –

ответ

0

Старый браузер, что еще работают лучше, чем просто

<a href="doc.pdf">download</a> 

Затем установки другой путь на сервере для запасного варианта.

Ибо не тот старый браузер, вы можете иметь возможность загрузить PDF в виде строки и делать (перерыв в IE 9 & ниже):

<a href='data:application/pdf;content-disposition:attachment;filename=doc.pdf,' + pdfstring</a> 
Смежные вопросы