JQuery Error-Object не поддерживает этот метод или свойство - PullRequest
2 голосов
/ 15 мая 2011

Я использую asp.net 4.0. я создаю URL с помощью "rout.MapPageRoute".

, поэтому я заметил, что файл jquery не был загружен из-за того, что URL не является статичным. так что я использовал "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 ]

3 голосов
/ 15 мая 2011

Вам необходимо удалить $.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'
  });
});

Объяснение:
Как говорят в документах , вы используете $.noConflict(), чтобы указать jQuery , что вы не используете $ и разрешите другим библиотекам использовать его .Здесь у вас нет другой библиотеки, поэтому вам не нужно отказаться от контроля jQuery над переменной $ 1019 *, поэтому оба решения должны работать для вас.

1 голос
/ 20 декабря 2011

У меня была такая же проблема.

проверьте, что в файле css все пути src верны:

например, у этой строки есть src worng относительно моего веб-дерева:

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

Также проверьте, правильно ли загружается CSS-файл. Используйте опцию отладки в вашем браузере, чтобы проверить ее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...