【发布时间】:2013-03-29 02:02:27
【问题描述】:
由于某种原因,iPad Safari 浏览器不能很好地处理嵌入的 PDF。 PDF 在独立启动时可以自行查看,但不能使用对象标签。问题是它们不滚动。
我有一个带有嵌入式 pdf 的 jquery 页面,它可以在 mozilla 和 chrome 上很好地滚动,但在 safari (iPad) 上,PDF 仍然停留在第一页上并且不可滚动。问题是,如何在 iPad 浏览器上进行这项工作?
在这里Making embedded PDF scrollable in iPad 发布了一个类似的问题,但答案不是很好。他们通过使用 10000px 的高度来作弊,这为小文档创建了很多空白,并且可能不适用于非常大的文档:
<!DOCTYPE html>
<html>
<head>
<title>PDF frame scrolling test</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<style>
#container { overflow: auto; -webkit-overflow-scrolling: touch; height: 500px; }
object { width: 500px; height: 10000px }
</style>
</head>
<body>
<div id="container">
<object id="obj" data="my.pdf" >object can't be rendered</object>
</div>
</body>
</html>
有什么方法可以在不硬编码疯狂高度的情况下完成这项工作?
【问题讨论】:
-
PDF 是嵌入在应用程序中还是从服务器查看?也就是说,您是否有理由需要在 UIWebView 或 Mobile Safari 中显示 PDF?
-
PDF 在服务器上。最终,PDF 将在服务器上动态更新,无论它们是什么形状或大小,应用程序都会显示它们。应用程序的其余部分在 jquery 中完成,ipad 是我们用户的偏好。现在我正在将 PDF 启动到一个新的浏览器窗口,因为它可以工作,但理想情况下我想将它们嵌入到页面中,这样它们就不必离开了。
-
没有原生应用?
-
不,只是一个网站--html 5 + jquery
-
我面临同样的问题,我不想使用 PDF.js,因为它太复杂了。我只想在 iPad 中使用对象标签显示 PDF,因为它也适用于所有其他浏览器。有cmets吗?