Jquery 的新功能 - 它根本不在任何浏览器上加载或工作

New to Jquery - it does not load or work at all on any browsers

本文关键字:浏览器 任何 加载 工作 新功能 Jquery      更新时间:2023-09-26

我对jQuery很陌生。我正在尝试创建一个简单的页面。使用谷歌托管的jQuery。基于堆栈溢出的许多示例,我编写了这一小段代码。更改事件永远不会被触发。我也没有看到"无法加载"警报。 如果我查看火虫并从谷歌展开脚本标签,它会显示为"未定义"。我正在本地测试,不使用任何网络服务器。谁能指出我的错误?代码如下:

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link href="./styles/qForm.css" rel="stylesheet" type="text/css"/>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
    <script>
        if (!window.jQuery) {
            alert("can not load');
        }
        $('#choice').change(function () {
                    alert('here!');
                    if($(this).val() == '0') $(this).addClass('empty');
                    else $(this).removeClass('empty')
                });
        $('#choice').change();
    </script>
</head>
<body>
    <div id="surround">
        <div id="top">
            <h3 id="title"> Enter Information </h3>
        </div>
        <div id="bottom">
             <select id="choice">
                 <option style="color: gray;" value="0" selected="selected">Select...</option>
                 <option value="1">one</option>
                 <option value="2">two</option>
                 <option value="3">three</option>
             </select>
        </div>
    </div>
</body>

您在alert函数的引号上有一个拼写错误。

alert("can not load');

引号必须相同。这应该是你的代码不起作用的第一个原因。

alert("can not load");

使用jQuery时,通常将其包装在"ready"函数中。

<script>
$(document).ready(function(){
    $('#choice').change(function () {
        alert('here!');
    });
});
</script>

这意味着 jQuery 将等到页面完全加载后再应用绑定。 如果它尝试将绑定应用于尚不存在的元素(页面尚未呈现这些元素(,则只会忽略它。

将 http: 添加到脚本源代码

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

使用本地文件时,浏览器无法理解<script src="//ajax...."。将其更改为<script src="http://ajax...."

相关文章: