为什么这个JavaScript在Internet Explorer 7-8中不起作用?我要做的就是通过使用jQuery按类名选择DIV来为多个DIV连接'click'事件。
适用于Firefox,Chrome,Safari。在IE中,它只能在浏览器模式下工作:IE 9 /文档模式:IE 9标准“。无法在IE 7或8中使用它。
<!DOCTYPE html>
<head>
<title>IE Click Target Test</title>
</head>
<body>
<div class="ClickTarget">Button 1</div>
<div class="ClickTarget">Button 2</div>
<!-- load jQuery 1.6.4 from CDN -->
<script type="application/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="application/javascript">
// This works fine in all browsers except IE pre-9.
$(document).ready(function () {
$(".ClickTarget").click(function () {
alert("If you can see me, it worked!");
});
});
</script>
</body>
</html>
出于某种原因,也许即将到来的假期,我忽略了一些事情。任何想法为什么我不能在IE中注册点击?
答案 0 :(得分:4)
我认为这是type="application/javascript"
代码中的<script>
-
“text / javascript”是三者都支持的唯一类型 浏览器。但是,您实际上并不需要输入类型。类型 如果是,脚本标记的属性将默认为“text / javascript” 没有特别说明。这将如何影响验证,我不是 当然。但无论如何这真的很重要吗?
从 - Why doesn't IE8 recognize type="application/javascript" in a script tag?
答案 1 :(得分:2)
尝试将script
代码的类型属性更改为text/javascript
,它应该可以在所有浏览器中正常使用。
答案 2 :(得分:1)
答案 3 :(得分:0)
这不是答案,但评论不能格式化代码,所以只是一个FYI ......
此:
$(document).ready(function () {
...
});
可以缩短为:
$(function() {
...
});