在上周末为期两天的研究之下,马超终于找到了特效兼容IE8的方法。现在用IE8浏览网站的时候会发现不兼容的树叶特效被取消掉了,并且在焦点图上方会出现提示升级浏览器的蓝色文字。在之前一直想了很久都没有解决的问题,现在解决了感觉好舒畅!
其实早在之前就和一些做前端开发的大神们聊过,许多人觉得这样的方法其实不难实现,肯定是用if做判断,但是肯定没人去花心思这么研究,求人不如求己,索性自己来,现在把方法总结出来,有想根据浏览器实现不同特效的童鞋们可以参考一下。其实针对IE浏览器,有自己的一套专门的标签去判断,那就是<!--[if IE X]>仅IEX可识别<![endif]-->这段代码。用这个可以实现不同IE之间的效果不同,但是要记住,只有IE浏览器能识别这段代码,其他的浏览器会直接把这段代码当作注释,这样就解决了IE想实现某些效果的问题。那么接下来就在于IE8如何取消某特效。这种时候我们只能用判断语句来做到,就是if。我们知道浏览器的内核都是通过标识码来识别,每个浏览器的标识码都不同,这样就很简单了,就是if浏览器标识符版本为IE6、IE7、IE8,那么向代码输入空字符,else向代码中输入特效JS,代码为 document.writeln('你想要的特效JS代码'); 这一段,记得要把代码闭合,还要向浏览器输入 document.writeln('</scr' + 'ipt>'); 这一段,中间这样写是为了避免代码提前判断JS闭合 。这样就可以很简单的实现了不同浏览器的效果不同,到现在还没有发现什么问题,如果遇到了再去研究。
从昨天的文章可以看到IE8这个浏览器使用量无法忽视,所以不得已必须改变一下网站代码,让网站可以在IE8之下不那么别扭。不过记得,这样的方法只有调用的JS有问题的时候才可以这样,如果网站本身就是用html5+css3编写的,那是没有办法的,除非提前判断不同IE下调用不同的css文件。所以“特效有风险,使用需谨慎”。
评论列表
尊敬的访客,谢谢您的来访并请您留下珍贵的评论,作为我改进的发展的方向,谢谢!