wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了window.print()JavaScript的特征检测解决方案大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

题 有没有办法检测window.print()的支持?我更喜欢检测这个功能本身而不是试图检测我是在移动浏览器或桌面,iOS或Android或我可能在哪个特定的移动浏览器上的兔子洞. 背景 以下链接让我相信: > Apple要求所有第三方浏览器都使用UIWebView >运行window.print()时,非Safari应用程序中使用的UIWebView不执行任何操作 >运行window.print

有没有办法检测window.print()的支持?我更喜欢检测这个功能本身而不是试图检测我是在移动浏览器或桌面,iOS或Android或我可能在哪个特定的移动浏览器上的兔子洞.

背景

以下链接让我相信:

> Apple要求所有第三方浏览器都使用UIWebView
>运行window.print()时,非Safari应用程序中使用的UIWebView不执行任何操作
>运行window.print()时,iOS上的Safari会执行适当的操作

链接

> https://productforums.google.com/forum/#!topic/chrome/7wTj1dteSeI
> Javascript printing on mobile devices(ios)
> https://stackoverflow.com/a/4362472/749227
> http://daringfireball.net/linked/2012/06/28/chrome-ios
> https://stackoverflow.com/a/4362472/749227

附:我查看了Modernizr文档,看它是否可以检测到对打印的支持,但没有发现任何东西.

p.p.s.我看到Chrome for iOS确实支持打印,尽管是通过GCP.@L_674_12@,只是寻找功能检测而不是打印解决方案. (https://support.google.com/chrome/answer/3049815?hl=en&ref_topic=1719889)

编辑
为了澄清,似乎window.print不是任何标准的一部分:https://developer.mozilla.org/en-US/docs/Web/API/Window.print.如果window.print存在于某些浏览器中但没有做任何有用的事情(例如,没有连接到任何浏览器特定的适当打印实现功能)这最终是我想要检测的.

我的猜测是移动浏览器供应商将为window.print定义一些内容,以便任何试图调用它的脚本都不会出错;但是调用可以是No op,或者可以向操作系统发送OS忽略的操作系统.

我越是想到这样做的胆量如何起作用,我就不那么有希望了解一个简单的JavaScript方法来检测这个功能,这太糟糕了.

这个问题确实是 Determine whether browser supports printing的重复.请参阅carpetsmoker对此问题的评论和提到的答案.我同意,这可能是我们现在能做的最好的事情.

即使window.print不是任何标准的一部分,如果浏览器供应商实现并同意某些API进行检测,那就太好了.也许他们都在内部正在为函数实现一个适当的实现,因此不想丢弃那些暂时没用的东西.那好吧.

大佬总结

以上是大佬教程为你收集整理的window.print()JavaScript的特征检测解决方案全部内容,希望文章能够帮你解决window.print()JavaScript的特征检测解决方案所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。