为什么这段代码似乎没有运行?

时间:2013-01-10 19:29:52

标签: jquery

每当为child-input元素触发keydown事件时,我正在编写一个jquery脚本来更改父div的颜色,但代码似乎没有运行。

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script>
            $(document).ready(function(){
                        $("input").keydown(function(){
                        $("#div").css("background-color","teal");
                    });
                });
        </script>
    </head>
    <body>
    <div id="div">
        <input type="text">
    </div>
    </body>
</html>

2 个答案:

答案 0 :(得分:5)

您忘记了jquery链接中的“http”(假设您使用file://来访问该文件),请更改

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>

编辑:

当准备好去服务器时,请将其更改回//ajax.googleapis.com/...以避免@Femaref提到的http / https问题

答案 1 :(得分:1)

如果这是你的所有代码,那么div周围没有任何空间来显示背景。

请看这个小提琴。 http://jsfiddle.net/RcyQW/

如果您添加padding:5px;,则div会显示背景颜色。

另请注意,只有当用户在输入中键入内容时才会触发,而不是在焦点有焦点时触发。