少于IE11不工作 - 为什么?

时间:2014-08-01 09:27:38

标签: javascript css internet-explorer web less

我有以下示例:                    

<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设置。

1 个答案:

答案 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>,因为该属性已被弃用。