highcharts源码学习

userAgent = navigator.userAgent,
isIE = /msie/i.test(userAgent) && !win.opera,
docMode8 = doc.documentMode === 8,
isWebKit = /AppleWebKit/.test(userAgent),
isFirefox = /Firefox/.test(userAgent),
SVG_NS = 'http://www.w3.org/2000/svg',
hasSVG = !!doc.createElementNS && !!doc.createElementNS(SVG_NS, 'svg').createSVGRect,
hasBidiBug = isFirefox && parseInt(userAgent.split('Firefox/')[1], 10) < 4, // issue #38
useCanVG = !hasSVG && !isIE && !!doc.createElement('canvas').getContext,

document.documentMode:这个属性只有IE中才支持,document.documentMode===8判断是不是IE8

document.createElementNS:如果是空的话表示是IE

document.createElementNS():这个方法创建带有指定命名空间的元素节点。


IE8不支持SVG,所以给Highcharts图表设置legend水平位置时,设置相同的x值,Chrome与IE的显示效果不一致。因此需要判断浏览器是否支持SVG,根据不同结果,设置不同的x值。

!!doc.createElement('canvas').getContext:判断检测你的浏览器是否支持The Canvas API

你可能感兴趣的:(highcharts源码学习)