2012-02-05 5 views
0

Я планирую использовать несколько сценариев jquery, чтобы делать разные вещи. Сайт уже работает неправильно. Я могу использовать динамический загрузчик или слайдер контента, как показано в коде. Я знаю, что это связано с jquery-1.6.2.min.js и с другим файлом .min.js. Как я могу работать с обоими сценариями?Несколько сценариев JQuery

<!DOCTYPE html> 
<html> 

<head> 
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' /> 

<title>Dynamic Page | Home</title> 

<link rel='stylesheet' type='text/css' href='../css/style.css' /> 


<!--DYNAMIC LOADER--> 
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js'></script> 
<script type='text/javascript' src='../js/jquery.ba-hashchange.min.js'></script> 
<script type='text/javascript' src='../js/dynamicpage.js'></script> 

<!--CONTENT SLIDER--> 
<link rel="stylesheet" href="../css/basic-jquery-slider.css"> 
<script src="../js/jquery-1.6.2.min.js"></script> 
<script src="../js/basic-jquery-slider.js"></script> 


<!--CONTENT SLIDER--> 
<script> 
    $(document).ready(function() { 

    $('#banner').bjqs({ 
     'animation' : 'slide', 
     'width' : 940, 
     'height' : 403 
    }); 

    }); 
</script> 

<style> 
.container { 
width: 100%; left: 0; right: 0; top:0; bottom: 0; position: fixed; overflow: auto; 
background-image:url(../images/screen.png); 
font-family: Helvetica, sans-serif; 
} 
</style> 
</head> 

<body> 
<div class="container"> 

<div id="page-wrap"> 


     <nav> 

      <ul class="group"> 
      <img src="../../Website/images/logo.png"> 
       <li><div id="home"><a href="index.html"><img src="../images/menu-home.png"></div></a></li> 
       <li><div id="about"><a href="about.html"><img src="../images/menu-about.png"></div></a></li> 
       <li><div id="gallery"><a href="contact.html"><img src="../images/menu-gallery.png"></div></a></li> 
       <li><div id="affiliates"><a href="#l"><img src="../images/menu-affiliates.png"></div></a></li> 
       <li><div id="biography"><a href="#"><img src="../images/menu-bio.png"></div></a></li> 
       <li><div id="contact"><a href="#"><img src="../images/menu-contact.png"></div></a></li> 
      </ul> 
     </nav> 


    <section id="main-content"> 
    <div id="guts"> 



    <div id="container"> 

    <div id="banner"> 
    <ul class="bjqs"> 
     <li><img src="../images/banner02.jpg" title="Cool Skull"></li> 
     <li><img src="../images/banner04.jpg" title="Women1"></li> 
     <li><img src="../images/banner01.jpg" title="Kid With Shell"></li> 
     <li><img src="../images/banner03.jpg" title="Women2"></li> 
    </ul> 
    </div> 
</div> 

    </div> 
    </section> 

</div> 

</div> 
</body> 

</html> 
+0

Не могли бы вы сообщить, какую ошибку бросил ваш браузер? Если вы используете firefox, нажмите Ctrl + Shift + J, чтобы открыть консоль ошибок. Кроме того, из приведенного выше кода я не вижу два подключаемых модуля. Вы используете другой плагин в файле dynamicpage.js? – Vikas

+0

@Vikas У меня есть сценарий, который исчезает в содержимом страницы при нажатии ссылок и другом скрипте, который предназначен для слайдера изображения. Если я вынимаю строку jquery-1.6.2.min.js, фейдер содержания будет работать нормально, но если я выберу 1.4/jquery.min.js, то слайдер будет в порядке, но не фейдер. – user1165861

+0

. Вы используете оба jQuery 1.6 .2 и jQuery 1.4? –

ответ

0

Oh! Я вижу, что вы используете несколько версий jquery на одной странице. Это то, что конфликты неизбежно произойдут. Здесь попробуйте эту ссылку.

http://web.enavu.com/daily-tip/using-multiple-versions-of-jquery-on-the-same-page/

Это может решить вашу проблему.

+0

, так что я получаю от этого, это добавить это? user1165861

+0

Да. Следуйте инструкциям, приведенным в этой ссылке. Это может решить вашу проблему. – Vikas

+0

Должен ли я изменить все $ в 1.6.2.min.js?!? – user1165861

1

Я думаю, что нет хорошего решения здесь, а два варианта:

  1. Resolve любых несовместимостей в вашем унаследованного кода для запуска на самой последней версии JQuery
  2. пересмотреть текущий код так, что он совместим с предыдущей версией jQuery, если вариант один невозможен.

Я предлагаю это, потому что для поддержки двух версий jQuery вам все равно нужно обновить один скрипт или другой, чтобы ссылаться на jQuery через $ jq (или что-то еще) вместо стандартного $. Если вы собираетесь обновить одну базу кода или другую таким образом, более эффективно использовать это время, чтобы просто разрешить несовместимости и поддерживать одну версию jquery. Существует много причин, но наиболее важными являются:

  • Две ссылки на одну и ту же структуру могут смутить других разработчиков проекта.
  • Производительность затруднена, так как страница должна теперь запросить фреймворк дважды.
  • Не так много времени сохраняется, так как вам по-прежнему необходимо обновить свою кодовую базу, чтобы ссылаться на отдельную версию jQuery по-разному.
  • По-прежнему существует вероятность конфликтов или проблем с плагинами и обработчиками событий.

Проведение времени для решения проблем, связанных с поддержкой одного фреймворка, и тратить время на поддержку двух экземпляров одной и той же структуры, повысит стабильность вашего проекта и упростит его поддержку.

+0

+1 сохраните свой проект в полном объеме, включив только одну версию jquery (желательно недавнюю) – xec

Смежные вопросы