Jquery Error-Object不支持此方法或属性

时间:2011-05-15 09:17:09

标签: jquery jquery-plugins jquery-selectors

我使用的是asp.net 4.0。我正在“routes.MapPageRoute”的帮助下创建Url。

所以我注意到由于url不是静态的,jquery文件没有加载。所以我用过 “ResolveClientUrl”。我可以加载js文件,但在jquery代码中我得到错误。

我确实问了同样的问题 http://forums.asp.net/t/1680184.aspx/1?Jquery+Error+Object+Doesn+t+support+this+method+or+property+

我也给出了错误的图片.. 拜托,任何人都可以指导我哪里出错了。

我不知何故觉得我有问题,因为我在全局文件中写了url模式。

代码:

<asp:Content ID="content1" runat="server" ContentPlaceHolderID="HeadContent">
    <link href="../js/fancybox/jquery.fancybox-1.3.4.css" rel="stylesheet" type="text/css" />
     <script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.1.js" type="text/javascript"></script>
     <script src='<%=ResolveClientUrl("~/js/fancybox/jquery.fancybox-1.3.4.js")%>' type="text/javascript"></script>
     <script src='<%=ResolveClientUrl("~/js/fancybox/jquery.easing-1.3.pack.js")%>' type="text/javascript"></script>
     <script src='<%=ResolveClientUrl("~/js/fancybox/jquery.mousewheel-3.0.4.pack.js")%>' type="text/javascript"></script>
    <script type="text/javascript">
        $.noConflict();
        $(document).ready(function () {
            $(".fancyYoutube").fancybox({
                'transitionIn': 'elastic',
                'transitionOut': 'fade',
                'width': 680,
                'height': 495,
                'type': 'swf'
            });
        });
    </script>
</asp:Content>

错误:
enter image description here

2 个答案:

答案 0 :(得分:3)

您需要从代码的开头删除$.noConflict();;或者如果你想保留它,你不应该在它后面的行中使用$

解决方案1:

// $.noConflict(); <-- comment or remove this line
$(document).ready(function () {
  $(".fancyYoutube").fancybox({
    'transitionIn': 'elastic',
    'transitionOut': 'fade',
    'width': 680,
    'height': 495,
    'type': 'swf'
  });
});

解决方案2:

$.noConflict();
jQuery(document).ready(function () {
  jQuery(".fancyYoutube").fancybox({
    'transitionIn': 'elastic',
    'transitionOut': 'fade',
    'width': 680,
    'height': 495,
    'type': 'swf'
  });
});

说明:
正如the docs所述,您使用$.noConflict()告诉jQuery 不要使用$并让其他库使用它。这里没有其他库,所以你不需要放弃jQuery对$ variable 的控制,所以这两个解决方案都适合你。

答案 1 :(得分:1)

我遇到了同样的问题。

检查css文件中所有src路径是否正确:

例如,这一行有一个关于我的网络树的src worng:

.fancybox-ie #fancybox-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='**fancybox/**fancy_shadow_n.png', sizingMethod='scale'); }

同时检查css文件是否正确加载。使用浏览器中的调试选项进行检查。