我有以下示例:
<style type="text/less">
@bg: black;
@fg: white;
body {
background-color: @bg;
color: @fg;
}
</style>
<script type="text/javascript" language="JavaScript"
src="http://cdnjs.cloudflare.com/ajax/libs/less.js/1.7.3/less.js">
</script>
<title> test </title>
</head>
<body>
test
<script type="text/javascript" language="JavaScript">
alert("test");
</script>
</body>
</html>
它在Firefox,Chrome和Opera中以黑色地面显示JavaScript警报和白色文字。出于某种原因,它在IE11中不起作用:正在显示警报,但LESS解析不会发生。我在所有异常中都使IE11 Developer Tools中断,但似乎没有任何问题。
警报就在这里,因为我担心Internet Explorer根本不会执行脚本,但显然情况并非如此。
顺便说一句,我也用早期版本
尝试了这个https://raw.github.com/cloudhead/less.js/master/dist/less-1.3.3.min.js
而不是来自cdnjs.cloudflare.com
的那个,也没有运气。
据我所知,IE11应该支持LESS。如果有人知道为什么它不工作,我将非常感激。
编辑这似乎与我的Internet Explorer配置有关。我在Windows 2008 R2计算机上默认使用所有Internet Explorer设置。
答案 0 :(得分:4)
在<{em> <script>
标记后放置您的LESS代码。
<script type="text/javascript" language="JavaScript"
src="http://cdnjs.cloudflare.com/ajax/libs/less.js/1.7.3/less.js">
</script>
<style type="text/less">
@bg: black;
@fg: white;
body {
background-color: @bg;
color: @fg;
}
</style>
<title> test </title>
如果在包含less.js
之前放置它,则浏览器不知道如何处理该段代码。这就是为什么它不被解析。
另一种方法:删除所有language="JavaScript"
标记上的<script>
,因为该属性已被弃用。