gpt4 book ai didi

JavaScript 在 Internet Explorer 8(和 7)中为 window.print 调用和应用

转载 作者:搜寻专家 更新时间:2023-11-01 04:52:55 24 4
gpt4 key购买 nike

好吧,我在网上找了很多,但找不到答案。

我可以预期浏览器之间的 CSS 差异,但也存在 JavaScript 差异?

那么为什么这在 IE8 中有效:

window.print(); // works

但是当我将 window.print 传递给一个函数并调用它时,它在 IE8 中不起作用(在 IE9 中起作用):

function callIt(f){
f.call();
};



callIt(window.print);

这是一个已知问题吗?


编辑

确定它不起作用意味着它会简单地忽略它,没有 javascript 错误或任何东西。

抱歉,它给出了这个错误:

   Object doesn't support this property or method

编辑 2

我需要使用 callapply 因为我需要传递上下文。我正在尝试创建一个可以传递函数的类,它可以通过传递上下文或参数来调用它。不要告诉我使用 f() 这不是答案 因为它不能解决我的问题。 题目是callapply

最佳答案

在 IE < 9 中,window.* 函数似乎是与用户创建的函数不同的类型。因此,它们不会获得任何 Function.prototype.*。你会看到

typeof alert === 'object'

function a(){}

typeof a === 'function'

任何 window.* 函数都会发生这种情况。仅适用于 IE < 9. WTG Miscrosoft。

你可以试试

Function.prototype.call.call(window.print)

看看这是否适合你。

关于JavaScript 在 Internet Explorer 8(和 7)中为 window.print 调用和应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6873896/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com