动态更改embed标签src属性时不显示PDF

时间:2011-12-05 08:48:33

标签: jquery html5 jquery-mobile embed embedded-resource

可能重复 JavaScript: Changing src-attribute of a embed-tag但这不适用于jQueryMobile。

我有以下情况;我有一个页面应该根据查询字符串值(文档URL)查看多个文档(PDF文档)。

我正在使用以下代码从不同页面导航到查看器页面

$.mobile.changePage("Viewer.aspx?URL=" + documentURL;

以下是我用来删除现有embed标记的代码,并将其重新插入src属性中嵌入的文档url。

$('div[id="pageViewer"]').live("pageshow", function() {
    var queryStringVals = $().SPServices.SPGetQueryString();
    var menuURL = queryStringVals["URL"];

    $("#menuViewer").attr("src", menuURL);
    var parent = $("#menuViewer").parent();
    $("#menuViewer").remove();
    parent.append("<embed id='foodMenuViewer' type='application/pdf' style='width: 400px; height: 900px;' src=" + menuURL + " />");
});

此代码正常工作,插入了新的嵌入标记,但未加载pdf文档!
此外,将页面事件更改为任何其他事件(即pageinit),在这种情况下,我无法捕获查询字符串值。

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

好的,我可能不会使用<embed>而是使用<iframe>甚至<object>标记来执行您正在执行的操作。

这是an article that shows this

以下是PDFObject that helps embedding PDFs,他们建议只添加<object>标记,例如

parent.append("<object id='foodMenuViewer' type='application/pdf' style='width: 400px; height: 900px;' src=" + menuURL + " />");

希望这些有帮助...