Почему jQuery не работает в Microsoft Visual Studio 2010? - PullRequest
0 голосов
/ 06 января 2012

Я создал веб-приложение ASP.NET MVC 2 в MS Visual Studio 2010. И теперь мне нужно добавить к нему стили с помощью JQuery. Для создания слайд-шоу изображений в div я написал файл JQuery и попробовал чтобы связать его с моей главной страницей просмотра. Но что происходит, когда я пытаюсь запустить свой проект, Visual Studio сообщает: «Ошибка времени выполнения Microsoft JScript:« jQuery »не определен» .. Может ли кто-нибудь из вас помочь мне в этом вопросе? ... Спасибо:)

here's the code I have given within my jQuery

/*Coding : Nidhin & Eldhose*/


function slideSwitch() {
var $active = $('#Left_Image DIV.active');

if ($active.length == 0) $active = $('#Left_Image DIV:last');

// use this to pull the divs in the order they appear in the markup
var $next = $active.next().length ? $active.next()
: $('#Left_Image DIV:first');

// uncomment below to pull the divs randomly
//     var $sibs  = $active.siblings();
//     var rndNum = Math.floor(Math.random() * $sibs.length );
//     var $next  = $( $sibs[ rndNum ] );


$active.addClass('last-active');

$next.css({ opacity: 0.0 })
.addClass('active')
.animate({ opacity: 1.0 }, 1000, function () {
$active.removeClass('active last-active');
});
}

$(function () {
setInterval("slideSwitch()", 5000);
});

Ответы [ 4 ]

3 голосов
/ 06 января 2012

Возможно, вы забыли сослаться на скрипт jquery, прежде чем пытаться его использовать:

<script src="<%= Url.Content("~/Scripts/jquery-1.5.1.min.js") %>" type="text/javascript"></script>
1 голос
/ 06 января 2012

Убедитесь, что вы включили JQuery.

Ваша главная страница должна иметь что-то вроде

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

В идеале, скрипты должны загружаться последними, но убедитесь, что вы загрузили jQuery, прежде чем пытаться его использовать.

0 голосов
/ 06 января 2012

Есть ли у вас сценарии, встроенные в ваш взгляд? если это так, это может быть причиной проблемы.

Эта проблема возникает, когда страница отображается и ваши сценарии просмотра отображаются последовательно перед сценариями на странице макета.

Если, например, вы восстанавливаете свой jquery внизу страницы _Layout.cshtml

</div>
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
</body>
</html>

и вы ссылаетесь, например, на свою проверку jquery в вашем представлении

<h2>Edit</h2>

<script src="<%: Url.Content("~/Scripts/jquery.validate.min.js") %>"    type="text/javascript"></script>
<script src="<%: Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js") %>"></script>

@using (Html.BeginForm())

вы можете переместить ваши сценарии в представлении в раздел сценариев

<h2>Edit</h2>

@section scripts {
   <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
   <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")"></script>
}

@using (Html.BeginForm())

и ссылаться на раздел сценариев в макете, передавая второй параметр, который указывает, является ли раздел сценариев необязательным.

   ...
   </div>
   <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
   @RenderSection("section", false) 
 </body>
</html>
0 голосов
/ 06 января 2012

Eldho,

Я предлагаю вам вернуться к методу slideSwitch () и сначала разобраться с этим типом вещей. Я бы даже предложил отключить функцию slideSwitch () следующим образом:

function slideSwitch() {
    var $active = $('#Left_Image DIV.active');
    alert($active);
}

и возьми оттуда, по крупицам. Кроме того, используйте firebug, чтобы увидеть, что происходит под одеялом. Наконец, как упоминалось в нескольких комментариях, попробуйте загрузить локальную копию jquery, а не версию CDN на случай, если возникнут проблемы с содержимым DNS и т. Д.

[править] - забыл добавить, ОБЕСПЕЧИТЬ , что ваш файл jquery js загружается последовательно ДО ваш пользовательский файл js !! то есть:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="<%= Url.Content("~/Scripts/myscript.js") %>"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...