【发布时间】:2015-07-01 10:34:52
【问题描述】:
我设法动态设置包含 pdf 的嵌入元素的高度。使用 jQuery 设置新高度。但我不觉得我使用了最好的“解决方案”。
旧高度 = html中设置的高度
新高度 = 使用 jQuery 设置的新计算高度
我遇到了一个问题:我的嵌入元素的旧高度为 200 像素。当我尝试用新高度覆盖它时,嵌入元素确实更改为新高度,但 PDF 高度保持在 200 像素。
但是,当我将旧高度设置得更高(5000 像素)时,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);
});
目前它正在工作,因为旧高度始终与新高度相同或更高。但这是已知问题还是正常问题?还是我做错了什么?有什么更好的解决方案?
【问题讨论】:
标签: javascript jquery pdf height embed