2012-04-25 52 views
1

我不熟悉那些不适用于firefox的JS函数,因此我在这里张贴问你们我的代码有什么问题。适用于除Firefox以外的任何其他浏览器。window.print不适用于firefox

var headstr = "<html><head><title></title></head><body>"; 
var footstr = "</body>"; 
var newstr = document.all.item("printable").innerHTML; 
var oldstr = document.body.innerHTML; 
document.body.innerHTML = headstr+newstr+footstr; 
window.print(); 
document.body.innerHTML = oldstr; 
return false; 

我做了一些阅读和我的一切是document.focus不适用于Firefox,但我不使用该行的代码,所以我有点失去了,什么原因造成我的问题。谢谢你们。

发生了什么是它什么也没做,试图做一个警报以防万一,它工作正常(当然评论所有的代码,只留下警报)。

+1

什么* *实际发生的?错误?一点都没有? – 2012-04-25 21:39:19

+0

对不起,按钮无法点击,尝试更改代码来执行提醒并且工作 – magicianiam 2012-04-25 21:40:44

+2

为什么不使用CSS('@media print')来达到此目的而不是使用JavaScript? – ThiefMaster 2012-04-25 21:45:15

回答

3

Firefox不会打印任何内容,因为会引发早期错误。 Firefox中的document.allundefined。一旦打开控制台,以下错误消息应该接近var newstr = ...变为可见:

TypeError: document.all is undefined 
+0

我明白了,我没有安装Firebug,所以我一直无法看到,但Firefox不支持document.all.item? – magicianiam 2012-04-25 21:54:25

+0

@magicianIam'document.all'是'undefined'。显然,'item'方法也不存在。仅供参考:Firefox有一个内置控制台,请按Ctrl + Shift + J。 – 2012-04-25 21:56:29

+0

我明白了,谢谢你。你有任何想法作为该功能的替代方案吗?谢谢 – magicianiam 2012-04-25 22:01:21

相关问题