我在Firefox和在iframe中加载PDF时遇到了一个奇怪的问题。下面是这些页面的功能。-从下拉列表中选择一个项目-根据选择在iframe中加载PDF。
除了FF之外,所有其他浏览器都可以正常工作。在左下角选择一个要加载状态的项,上面写着“已停止”。我启动了Firebug,但没有HTTP操作。就像一切都停止了一样。
这就是问题所在。当我弹出DIV框时,我可以通过在下拉列表中进行选择来加载FF中的PDF。一旦我关闭了div,它就不能加载。
这是加载PDF的jQuery。
<script type="text/javascript">
$(document).ready(function() {
$("#<%= ddlSpecialty.ClientID %>").change(function() {
var selected = $("#<%= ddlSpecialty.ClientID %> option:selected");
var speciality = selected.text();
switch (speciality) {
case 'Cardiology':
window.open('./../PDF/SpecialityGuidelines/SPECIALTY-cardiology.pdf','Specialtyframe');
break;
;
case 'Neurology':
window.open('./../PDF/SpecialityGuidelines/SPECIALTY-Neurology.pdf','Specialtyframe');
break;
;
case '-- Select Specialty --':
window.open('Specialty.html','Specialtyframe');
break;
;
}
});
});
</script>
<div id="Clean_ContentPlaceHolder1_c2_flyout_content" style="display:none;filter:alpha(opacity=0);-moz-opacity:0;opacity:0;">
<div class="modalcontainer" style="width: 700px;">
<div class="modalheader">
<span id="Clean_ContentPlaceHolder1_c2_flyout_Label3" class="modalmsg">Specialty PDF</span>
<img class="modalclose" alt="Close" title="Close" onclick="Clean_ContentPlaceHolder1_c2_flyoutimgPDF.Close();" style="cursor: pointer;" />
</div>
<div class="modalbody" style="height: 500px;">
<table width="100%" cellpadding="5" cellspacing="0">
<tr>
<td>
<iframe id="Specialtyframe" name="Specialtyframe" frameborder="0" width="650px" height="500px" src="Specialty.html">
[Your browser does <em>not</em> support <code>iframe</code>, or has been
configured not to display inline frames. You can access <a href="../PDF/SpecialityGuidelines/SPECIALTY-Cardiology.pdf">
the document</a> via a link though.]
</iframe>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="Clean_ContentPlaceHolder1_c2_flyout_contentbox"></div> 有什么想法吗?
发布于 2010-02-03 09:49:32
有趣的方法。为什么不试着像这样操作iframe的src属性呢?
<script type="text/javascript">
$(document).ready(function() {
$("#<%= ddlSpecialty.ClientID %>").change(function() {
var selected = $("#<%= ddlSpecialty.ClientID %> option:selected");
var speciality = selected.text();
switch (speciality) {
case 'Cardiology':
$('#Specialtyframe').attr('src','./../PDF/SpecialityGuidelines/SPECIALTY-cardiology.pdf');
break;
;
case 'Neurology':
$('#Specialtyframe').attr('src','./../PDF/SpecialityGuidelines/SPECIALTY-Neurology.pdf');
break;
;
case '-- Select Specialty --':
$('#Specialtyframe').attr('src','Specialty.html');
break;
;
}
});
});
</script>如果您的非工作代码没有作为“工作”示例发布在某个地方,很难知道这是否可以工作;但可以试一试。也许你可以在某个地方发布一个例子,这样我们就可以看看它了?
发布于 2010-02-04 10:48:40
好的,我已经将你的代码移植到我的机器上并进行了测试,它在FF 3.5.7中工作得很好。我认为发生的情况是,你安装了某种插件,干扰了你想要做的事情。
如果我是你,我会开始禁用我所有的插件,重新启动firefox,看看是否有效。如果是这样的话,开始重新启用你的插件,直到你的应用失败,然后你至少会知道是哪个插件导致了问题。
另外,检入Tools > Options > Applications并检查要在其中打开的文件。我的设置是在浏览器外部的Acrobat中打开,这意味着你的脚本不能立即为我工作;我必须设置FF在浏览器中打开它才能让它工作。
发布于 2010-01-31 23:23:11
我认为您的问题在于iframe中的width和height属性。在HTML中,不要将"px“添加到宽度和高度值中,只有在CSS中才会添加这些值。
<iframe id="Specialtyframe" name="Specialtyframe" frameborder="0" width="650px" height="500px" src="Specialty.html">更改为
<iframe id="Specialtyframe" name="Specialtyframe" frameborder="0" width="650" height="500" src="Specialty.html">试一试,也许能解决你的问题。
https://stackoverflow.com/questions/2134863
复制相似问题