Why /*@ isn't a comment in JavaScript?
This script http://html5shiv.googlecode.com/svn/trunk/html5.js looks like a big comment, but it works. Why /*@ doesn't behave like a comme开发者_StackOverflow中文版nt?
This uses a proprietry Microsoft feature called conditional compilation. As far as non-Microsoft browsers are concerned, it is a comment (but they don't need the shiv).
Here some more info and the source.
It is a comment - multiline comment. All browsers suports comments ( // or /* ... */ ) in JavaScript. But only IE checks for the @ in the comment and recognize the part of the script for the conditional compilation. This is for usage of the non-standart Microsoft features.
There is also conditional commentsMSDN in HTML, which will be removed in IE10.
It's a hack that uses IE's strange way of not considering /*@
a comment.
精彩评论