是什么让JS不能在IE9上运行,但在Firefox上运行正常

时间:2013-05-20 12:37:08

标签: javascript jquery internet-explorer-9

我正在学习JS并且正在研究简单的代码来练习。在测试基本代码时(下面是最简单的示例之一),IE9不会让它运行而Firefox没有问题。 我已按照IE9>工具> Internet选项>安全性中的配置指南来启用脚本运行,但无济于事。最初我认为这是我的JS / jQuery代码,但是为了排除故障我甚至尝试了最简单的JS代码,它只是被忽略了。我错过了什么?

<!DOCTYPE html>
<html>
<head>
    <style>
        div { color:blue; }
        span { color:red; }
    </style>
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
    <div>
        The values stored were
        <span></span>
        and
        <span></span>
    </div>
    <script>
        $("div").data("test", { first: 16, last: "pizza!" });
        $("span:first").text($("div").data("test").first);
        $("span:last").text($("div").data("test").last);
    </script>
</body>

2 个答案:

答案 0 :(得分:2)

$("div").data("beauty", { first: 16, last: "beast" });
$("span:first").text($("div").data("test").first);
$("span:last").text($("div").data("test").last);

比它看起来容易。您只需使用beauty更改test,因为您已将数据分配给 beauty 属性,并且您正尝试使用test检索它。 JSFiddle

现在您的代码将如下所示:

$("div").data("test", { first: 16, last: "beast" });
$("span:first").text($("div").data("test").first);
$("span:last").text($("div").data("test").last);

答案 1 :(得分:0)

您将数据保存在“美丽”键下,但正在尝试使用“test”键检索数据,该键将返回“undefined”。

将“测试”改为“美丽”,它应该有效。

$(function(){
    $("div").data("beauty", { first: 16, last: "beast" });
    $("span:first").text($("div").data("beauty").first);
    $("span:last").text($("div").data("beauty").last);
});

编辑: @PabloFernandez当你在IE中打开页面时,底部可能会出现一个黄色栏,上面写着“Internet Explorer限制此网页运行脚本或ActiveX控件”,并带有一个“允许阻止的内容”按钮。单击“允许阻止的内容”按钮,然后它就会消失,您的代码应该运行得很好。