object、param标签及页面显示PDF文件的方法
来源:互联网 发布:配电网负荷数据 编辑:程序博客网 时间:2024/05/16 18:46
object、param标签及页面显示PDF文件的方法
一、object、param标签
HTML <object> 标签
定义和用法
定义一个嵌入的对象。请使用此元素向您的 XHTML 页面添加多媒体。此元素允许您规定插入 HTML 文档中的对象的数据和参数,以及可用来显示和操作数据的代码。
<object> 标签用于包含对象,比如图像、音频、视频、Java applets、ActiveX、PDF 以及 Flash。
object 的初衷是取代 img 和 applet 元素。不过由于漏洞以及缺乏浏览器支持,这一点并未实现。
浏览器的对象支持有赖于对象类型。不幸的是,主流浏览器都使用不同的代码来加载相同的对象类型。
而幸运的是,object 对象提供了解决方案。如果未显示 object 元素,就会执行位于 <object> 和 </object> 之间的代码。通过这种方式,我们能够嵌套多个 object 元素(每个对应一个浏览器)。
实例
向 HTML 代码添加一个对象:
<object classid="clsid:F08DF954-8592-11D1-B16A-00C0F0283628" id="Slider1" width="100" height="50"><param name="BorderStyle" value="1" />
<param name="MousePointer" value="0" />
<param name="Enabled" value="1" />
<param name="Min" value="0" />
<param name="Max" value="10" />
</object>
浏览器支持
几乎所有主流浏览器都拥有部分对 <object> 标签的支持。
HTML 与 XHTML 之间的差异
NONE
提示和注释:
注释:<param> 标签定义用于对象的 run-time 设置。
注释:不要对图像使用 <object> 标签,请使用 <img> 标签代替。
可选的属性
- left
- right
- top
- bottom
标准属性
id, class, title, style, dir, lang, xml:lang
如需完整的描述,请参考标准属性。
事件属性
accesskey, tabindex, onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup
如需完整的描述,请参考事件属性。
二、网页内嵌多媒体 IE,Mozilla、Firefox、NetScape、Opera 2
2008-09-23 14:59
(一)完美内嵌 Quicktime
1、客户端要求:
对于 Windows 用户和 Mac OS X 用户,安装相应版本的 QuickTime 播放器即可。Windows 版下载 QuickTimeinstaller.exe,Mac OS X 版下载 QuickTimeinstaller.exe
Windows 用户也可以安装暴风影音等带有 QuickTime 解码器和浏览器插件的其他播放器,例如暴风影音。
对于 Linux 以及 FreeBSD、Solaris 等 Unix 系统用户,需要 VLC media player及其浏览器插件或者 MPlayer 及其浏览器插件。
2、实现代码:
<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="420" height="360"><param name="autoplay" value="true" />
<param name="src" value="mov%2F%B2%E2%CA%D4%2Emov" />
<embed src="mov%2F%B2%E2%CA%D4%2Emov" type="video/quicktime" autoplay="true" width="420" height="360">
</embed>
</object>
3、要点分析:
QuickTime 格式的内嵌比较简单,像上面那样写就可以了,基本上没有什么要注意的地方。媒体路径 src 的值,可以是完整地址,也可以是相对地址,可以用 url 编码,也可以不编码,QuickTime 插件和 VLC 插件都能正确的支持,当然为了保险起见,最好还是采用 url 编码方式里写媒体路径。
虽然 embed 中指定的是 video/quicktime 类型,但是即使链接的媒体是 mp3 仍然能播放。对于 QuickTime 支持的其他类型的没有进行测试,但我想应该也是可以的。
(二)完美内嵌 Flash
1、客户端要求:
安装你所使用的浏览器的 Flash 插件。
2、实现代码:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="420" height="320"><param name="movie" value="flash/打电话记.swf" />
<param name="quality" value="high" />
<embed src="flash/打电话记.swf" quality="high" type="application/x-shockwave-flash" width="420" height="320"></embed>
</object>
3、要点分析:
对于 Flash 似乎没什么好说的,因为这个用的很普遍。在这里写下来只是为了查阅方便,算是凑数吧。呵呵。
(三)让内嵌多媒体通过 XHTML 验证
1、问题:
上面的所有的代码,虽然能够完美的在各个浏览器上很好的播放了,但是还有一点美中不足,那就是这样的页面无法通过 XHTML 验证。原因是 embed 标签从来都不是 HTML 标准中的标签,因此 XHTML 中也没有它。
2、解决:
如果你不在乎你的网页是否符合标准,那照上面那样做就可以了。如果你还想追求更加完美,请看下面的解决方案:
下面以 flash 为例来介绍,方法同样适用于其他类型的多媒体内容。
我们知道 W3C 推荐使用的是 object 标签,但用法却不是 Internet Explorer 那种用 classid 来区分控件类型,而是采用 type 来指定 MIME 类型。现在的 Mozilla、Firefox 和 Opera 都支持这种用法,虽然 IE 目前的版本也支持这种用法,不过很可惜的是,IE 还是有 bug,那就是只有全部下载完毕才能播放。而且还不是所有的情况下都能用。在某些 IE 浏览器上还显示空白。所以单纯用 W3C 推荐的 object 标签用法还是不够的。但是我们可以作一下变通,如果是用户浏览器是 IE 的话,我们就用 IE 的 object 的用法,如果是其他浏览器,我们就采用 W3C 的用法。这样就可以两全其美了。也许此刻,你觉得我们该用到脚本了。不,我们不需要脚本。我们只需要用 IE 所特有的条件注释和 CSS 就可以做到了。例子如下:
<style type="text/css">
.mozilla {
display:block;
}
</style>
<!--[if IE]>
<style type="text/css">
.mozilla {
display:none;
}
</style>
<![endif]-->
<object
data="flashdatei.swf"
type="application/x-shockwave-flash"
height="275"
width="256"
class="mozilla">
<param name="autoplay" value="true">
</object>
<!--[if IE]>
<object
classid="cclsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
width="256"
height="275">
<param name="src" value=""flashdatei.swf">
</object>
<![endif]-->
你会发现其实就是把 embed 替换成了 object,而且位置也从 IE 的 object 中移出来了。embed 标签里的 src 属性在 object 中变成了 data 属性。而 firefox 等非 IE 浏览器因为不认识 <!–[if IE]> 标签,所以其中的部分都当作注释忽略了。而 IE 因为执行了 <!–[if IE]> 中的内容,所以 firefox 中可以识别的那个 object 因为 css 被重新定义而被隐藏了。
三、如何直接在网页中显示PDF文件
2011-06-17 15:52:49
1、 embed
<embed width="800" height="600" src="test_pdf.pdf"> </embed>通过的浏览器:360、Firefox、IE、Chrome
2、Object
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="600" border="0"> <param name="SRC" value="test_pdf.pdf"> </object>通过的浏览器:360、IE
未通过的浏览器:Firefox、Chrome
3、 iFrame框架
<iframe src="test_pdf.pdf" width="800" height="600"></iframe>通过的浏览器:360、Firefox、IE、Chrome
4、用浏览器直接访问http://127.0.0.1/test_pdf.pdf (其实这个不算是在网页内吧)
通过的浏览器:360、Firefox、IE、Chrome
以上四种方式均在WinXP下。(之前有碰到过上传的功能在Win7下失效的情况,故在此说明一下OS)
- object、param标签及页面显示PDF文件的方法
- object、param标签及页面显示PDF文件的方法
- PDF网页显示: object标签使用pdf插件打开中文文件的问题 (WEB开发)
- jsp页面中用object标签打开中文pdf文件的问题
- object中的<param>标签的详细介绍
- HTML <object>与<param> 标签的使用
- object/param标签
- object/param标签实例
- web页面pdf文件的显示
- object标签使用pdf插件打开中文文件的问题
- html中 object标签下 param 标签的valueType 属性
- PDF文件页面的拆分方法
- 在页面上显示后台回传的PDF文件
- <context-param>标签含义及与<init-param>标签的异同(转)
- action中获取页面中<s:param>标签的值
- struts2 标签 获取s:param的值 子页面获取 s:include s:param的值
- 静态页面打开PDF等文件的方法
- iOS开发:PDF文件的加载及显示(网络、本地)
- go flag 包解析命令行参数
- TCP拥塞控制 2
- Trigger Lesson
- 畅游Aarch64最方便的方法
- shell中的${},##和%%的使用
- object、param标签及页面显示PDF文件的方法
- Android面试必须要知道的事情
- qt二维码示例
- PHP代码如何实现获取真实IP和代理IP
- hduoj2042(不容易系列之二)
- Android ListView从网络获取图片及文字显示
- php开发常用代码片段(一)
- IIS不能对网站添加默认文档(由于权限不足而无法写入配置文件)
- HTML网页中的html body onload自动跳转方法介绍及自动跳转代码示例