#jquery #jquery-plugins #jquery-selectors
#jquery #jquery-плагины #jquery-селекторы
Вопрос:
Я использую asp.net 4.0. я создаю URL-адрес с помощью «маршрутов.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>
Ошибка:
Комментарии:
1. Пожалуйста, разместите весь соответствующий контент и код здесь вместо ссылки на внешний форум для устаревших целей 😉
2. Я добавил его сам из другого места.. @Abhishek пожалуйста, обновите, если у вас сейчас другой код (как предложил Majid).
Ответ №1:
Вам нужно удалить $.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 над переменной $, поэтому оба решения должны работать для вас.
Комментарии:
1. да, я не опубликовал код. это выдавало мне ошибку, поэтому только я удалил код этой страницы.
2. Итак, что еще остается проверить? ‘Здесь раньше был багги-код, который я удалил, не могли бы вы сказать мне, что с ним было не так?’ ?
3. хорошо .. Теперь я загрузил страницу с кодом .. 🙂 я только что удалил код, поскольку эта часть не работала. Теперь не могли бы вы, пожалуйста, направить меня?
4. Это действительно решило проблему. но теперь я получаю ошибку в файле fancybox js. Ошибка _show = function() { var pos, равно; loading.hide(); если (wrap.is («:visible») amp;amp; false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) { $.event.trigger(‘fancybox-отмена’); занято = false; возврат; } в строке, если(wrap.is …. та же ошибка, что и объект не поддерживается. что может быть причиной этого error…it это тот же js-файл, который отлично работает с другой страницей.
5. @shadow: это решило проблему, но теперь я получаю ошибку в файле js
Ответ №2:
У меня была та же проблема.
проверьте, что в файле css все пути src указаны правильно:
например, в этой строке есть ошибка src в отношении моего веб-дерева:
.fancybox-ie #fancybox-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='**fancybox/**fancy_shadow_n.png', sizingMethod='scale'); }
Также проверьте, что файл css загружается правильно. Используйте опцию отладки в вашем браузере, чтобы проверить это.