jQuery插件没有加载?

时间:2010-12-21 15:45:38

标签: jquery plugins

我正在尝试使用jQuery的圆角演示(http://plugins.jquery.com/project/corners),但是当它试图运行时我在Firefox和IE中都出现错误。

下面的代码显示了我正在尝试做的事情,错误是'$(“。Section”)。corner不是函数'。页面肯定是加载jquery,但没有加载角落插件。

任何人都知道为什么会出错?

<script src="../../Content/Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script src="../../Content/Scripts/jquery.corners.min.js" type="text/javascript"></script>   
<script type="text/javascript">
    $(document).ready(function () {
        $('.Section').corners();
    });
</script>

5 个答案:

答案 0 :(得分:5)

使用Firebug中的Net面板(或等效的开发人员工具)并确保首先加载脚本。如果没有,您应该会看到它在Net面板中为其订单项返回404状态。

答案 1 :(得分:2)

我已经完成了你的代码,我看不出问题所在。您可以在$(document).ready中尝试此代码并查看它返回的内容:

alert(typeof jQuery().corners)

如果它警告“功能”,那么你知道角落正在加载。如果它警告“未定义”,那么它没有加载,你可以追踪到这个问题。

答案 2 :(得分:1)

我创建了一个页面来加载jQuery Corners,看看我是否可以让它工作:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <style type="text/css">
    .Section {
        border-color: #000;
        border-width: medium;
        border-style: solid;
    }
    </style>
    <script type="text/javascript" src="jquery-1.4.4.min.js"></script>
    <script type="text/javascript" src="jquery.corners.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $('.Section').corners();
        });
    </script>
    <title>Corners</title>
    </head>

    <body>
    <p class="Section">
    Here is some text in my soon to be rounded corner paragraph.
    </p>
    </body>
    </html>

我在测试中发现,Corners插件已加载,但使用jQuery 1.4.4并使用Chrome 8.0.552.224,Safari 5.0.3,Firefox 3.6.13和Internet Explorer 8进行测试,只有Safari和Fireefox显示角落。 Chrome在控制台中产生了CSS错误,IE只是忽略了JavaScript。考虑到这一点,我建议你给CSS3 PIE a try for IE并使用一些组合CSS来表示其他元素:

<style type="text/css">
.Section {
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    -khtml-border-radius: 20px;
    border-radius: 20px;
}       
</style>

上面的CSS来自一个生成in a blog post by Jon Raasch的示例。

答案 3 :(得分:0)

我使用相同的库并遇到同样的问题,我做的是。

在您的document.ready代码之前复制粘贴corner.js库的完整代码并检查它是否已开始工作?

如果不是意味着corner.js应该再次下载。

答案 4 :(得分:-3)

应为$('.Section').corner();而不是$('.Section').corners()

这仅适用于使用“jQuery corner plugin”

的情况