据说是检验是否是IE浏览器最简js代码

星期二, 2010-11-23 | Author: Lee | ajax | 4,495 views

var isMSIE = /*@cc_on!@*/!1;

这就是一个测试浏览器的好方法,独有特性用来测试是不是IE,这可能是最短的了.

具体可以参照[Microsoft Jscript文档],下面是简单的介绍内容
@cc_on 文档
激活条件编译支持。

@cc_on

说明
@cc_on 语句激活 scripting 引擎中的条件编译。

极力推荐在注释中使用 @cc_on 语句,以使不支持条件编译的浏览器也接受此脚本为有效语法:

/*@cc_on*/

(脚本的剩余部分)
作为选择,在注释外的一个 @if 或 @set 语句也会激活条件编译。
[来自Microsoft Jscript文档]
jscript/javascript条件编译
在IE中,有一个鲜为人知的功能叫做条件编译(conditional compilation)。自从IE4开始支持这个功能,它由于在一些Ajax相关的javascript脚本中出现而受到一些关注。条件编译作为一种独立形式的对象判断,使得IE可以根据预定义或用户定义的条件来决定你的jscript或javascript代码特定部分是否编译。也可以把它看成是你的代码的条件注释,使你的代码能够在非IE浏览上也顺利运行。

语法概述

通过在你的脚本中使用@cc_on来激活条件编译,或者直接使用@if或者@set等等作为CC逻辑中一部分的句子来激活它。这里是一个示范例子:


例子: From http://www.blueidea.com/tech/web/2006/3238.asp

如果你使用IE(任何版本),你应该能够看到第一个document.write()的输出,如果是IE5+,接下来的两个document.write()你也能够看见(因为从IE5开始支持JScript 5)。最后一个document.write()方法是为了其他非IE5+浏览器服务的,无论是Firefox,opera,IE4,或者什么别的。条件编译依赖于类似在条件注释中使用的注释标签,以确保它在所有浏览器中都能工作顺畅。

当使用条件编译的时候,最好先通过@cc_on语句来激活它,只有这样你才能在你的脚本中包含注释标签以保证浏览器兼容,、就好像上面例子中所显示的那样。

@if, @elif, @else,@end 语句

Tags: , , ,

文章作者: Lee

本文地址: https://www.pomelolee.com/700.html

除非注明,Pomelo Lee文章均为原创,转载请以链接形式标明本文地址

一条评论 to 据说是检验是否是IE浏览器最简js代码

睿智小超人
2010 年 12 月 02 日

真的很短

Leave a comment

Search

文章分类

Meta