Svg 如何检测客户端';s浏览器?
测试浏览器/用户代理/客户端是否支持的最简单、最可靠的方法是什么?Raphael使用Javascript创建和控制SVG矢量图形,或者,如果SVG不可用但VML可用(例如,在Internet Explorer版本6到8中),则使用VML创建和控制等效图形 一种方法是特性检测SVG,如果SVG不可用,则特性检测VML。这里有一个答案,包括一些用于检测VML和SVG特性的代码。然而,这些评论表明,它可能并不适用于所有情况,我相信自2009年以来已经发生了很大变化。另外,拉斐尔可能有一种更简单的方法 一个更简单的选择可能是使用一些Raphael内部标志或函数。它已经为它是在SVG模式下运行还是在VML模式下运行设置了变量。这能用于可靠地检测“两者都不”的情况吗 或者可能有一种可靠的方法,基于创建一个空的Raphael对象并测试其属性或功能Svg 如何检测客户端';s浏览器?,svg,cross-browser,raphael,feature-detection,vml,Svg,Cross Browser,Raphael,Feature Detection,Vml,测试浏览器/用户代理/客户端是否支持的最简单、最可靠的方法是什么?Raphael使用Javascript创建和控制SVG矢量图形,或者,如果SVG不可用但VML可用(例如,在Internet Explorer版本6到8中),则使用VML创建和控制等效图形 一种方法是特性检测SVG,如果SVG不可用,则特性检测VML。这里有一个答案,包括一些用于检测VML和SVG特性的代码。然而,这些评论表明,它可能并不适用于所有情况,我相信自2009年以来已经发生了很大变化。另外,拉斐尔可能有一种更简单的方法
就一般背景而言,据我所知,唯一与Raphael不兼容的常见浏览器是1.x版和2.x版的Android stock浏览器,但是,如果可能的话,我更喜欢使用功能检测而不是浏览器版本检测(除非有充分的理由说明在这种情况下,这实际上是一个非常好的解决方案).检查官方文件:
与今天一样,这是正确的链接
if (!Raphael.type) alert('Your browser does not support vector graphics!');