Мне удалось динамически установить высоту моего элемента embed, содержащего pdf. Использование jQuery для установки новой высоты. Но у меня нет чувства, что я использовал лучшее «решение».Динамически заданная высота встроенного pdf
Старая высота = высота устанавливается в HTML
Новой высоты = Новая рассчитываются высота устанавливается с JQuery
я наткнулся на проблему: Мой встраивать элемент был старый высоту 200px. Когда я попытался переписать его с новой высотой, элемент embed изменился на новую высоту, но высота PDF осталась на уровне 200 пикселей. Но когда я установил старую высоту намного выше, 5000px, pdf правильно отреагировал на новую высоту.
Короткая версия:
Новая высоты встраивать> старой высоты встраивать = высота PDF остается на старой высоту встраивания
Новой высоту встраивать < старой высоту встраивать высоту = PDF правильно
Моего текущий код выглядит следующим образом:
<object>
<embed id="embed_pdf" type='application/pdf' src="/files/<?=$var['filename']?>" data-width="<?=$var['image_width']?>" data-height="<?=$var['image_height']?>" style="max-width:<?=$var['image_width']?>px;" width="100%" height="<?=$var['image_height']?>"/>
<p>Error message</p>
</object>
И мой «сценарий» код:
$(document).ready(function() {
var pdf_width = $("#embed_pdf").attr("data-width");
var pdf_height = $("#embed_pdf").attr("data-height");
var object_width = $("#embed_pdf").width();
var object_height = (object_width/pdf_width)*pdf_height;
$("#embed_pdf").attr('height', object_height);
});
на данный момент он работает, потому что старая высота я всегда одинаковы или выше, чем новая высота. Но разве это известная или нормальная проблема? Или я делаю что-то неправильно? Что может быть лучшим решением?
Благодарим вас за ответ! Я использую версию Chrome 42. Почему «-75» на высоте окна? – Brieneke
Это может быть просто пространство для полосы прокрутки или т. Д., Или чтобы оно не зависало, если у вас также есть панель заголовка. Это обычно та причина, по которой я это делаю. – Greg