We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 29893
    • 12 Posts
    Подскажите как регулировать порядок вызова JS скриптов?
    Столкнулся с тем что при использовании разных экстеншенов для modx происходит некоторая интерференция JS скриптов. А так же их двойное подключение.
    В моем снипете используется jquery datapicker. При этом Easy2 галерея использует его тоже.

    Поменял вызов jquery с
    $modx->regClientStartupScript('http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js');
    

    на такой
    $modx->regClientStartupScript('http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js',array('name'=>'jquery', 'version'=>'1.3.2', 'plaintext'=>false));
    

    заодно сделав такое же изменение в easy2 полегчало но не всегда, иногда получаем в head
    	<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    	<script type="text/javascript" src="/assets/libs/datetime/date.js"></script>
    	<script type="text/javascript" src="/assets/libs/datetime/jquery.datePicker.js"></script>
    	<script type="text/javascript" src="/assets/libs/datetime/date_ru_utf8.js"></script>
    	<script type="text/javascript" src="/assets/libs/datetime/dtstart.js"></script>
    	<link rel="stylesheet" type="text/css" href="/assets/modules/easy2/templates/style.css" media="screen" />
    	<link rel="stylesheet" type="text/css" href="/assets/libs/colorbox/colorbox.css" media="screen" />
    	<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    
    	<script type="text/javascript" src="/assets/libs/colorbox/jquery.colorbox-min.js"></script>
    


    Как жить дальше?

      • 1788
      • 1,103 Posts
      Пропишите скрипты руками. А в сниппетах/плагинах удерите их подключение.
      С помощью Phx можно регулировать их появление на нужных страницах.
        • 29893
        • 12 Posts
        Вопрос был не в этом - перепахать кучку кода, и потом это делать регулярно при накатывании апдейтов я могу но не хочу.
        Вы смотрели как устроена например Easy2? Там вызываются разные скрипты в зависимости от настроек.

        Best practice есть какой нибудь на эту тему? Между прочим заявлено
        Our Ajax CMS gives you the freedom to choose jQuery, Mootools, ExtJS, Prototype or any other library you choose, even ones that aren’t out yet.
          • 1788
          • 1,103 Posts
          Quote from: thomson at May 13, 2010, 03:17 PM

          Вопрос был не в этом - перепахать кучку кода, и потом это делать регулярно при накатывании апдейтов я могу но не хочу.
          Вы смотрели как устроена например Easy2? Там вызываются разные скрипты в зависимости от настроек.

          Best practice есть какой нибудь на эту тему? Между прочим заявлено
          Our Ajax CMS gives you the freedom to choose jQuery, Mootools, ExtJS, Prototype or any other library you choose, even ones that aren’t out yet.
          И часто вы делаете апдейт нескольких сниппетов, которые даже не в комплекте modx?
            • 6623
            • 127 Posts
            Quick Manager+ ?
              • 29893
              • 12 Posts
              Quote from: DAS at May 13, 2010, 11:02 PM

              Quick Manager+ ?
              этот я выкинул в первую очередь.
                • 29893
                • 12 Posts
                Quote from: antey at May 13, 2010, 09:20 PM

                Quote from: thomson at May 13, 2010, 03:17 PM

                ....
                Best practice есть какой нибудь на эту тему? Между прочим заявлено
                Our Ajax CMS gives you the freedom to choose jQuery, Mootools, ExtJS, Prototype or any other library you choose, even ones that aren’t out yet.
                И часто вы делаете апдейт нескольких сниппетов, которые даже не в комплекте modx?

                надеюсь что не часто, но это не тема для спора - на коленке я и так могу
                  • 6623
                  • 127 Posts
                  Что вам мешает в вызове снипитев указывать что не стоит подгружать js? Большинство это разрешают + noConflict()? Или вам критично время загрузки страницы?
                    • 29893
                    • 12 Posts
                    хочется красоты и легкости.
                    Я так понимаю механизм заложен в MODx но почему то криво работает
                      • 1788
                      • 1,103 Posts
                      Quote from: thomson at May 14, 2010, 02:06 AM

                      хочется красоты и легкости.
                      Я так понимаю механизм заложен в MODx но почему то криво работает
                      Многовато у вас скриптов для datapicker + Easy2.
                      Механизм флеймворка - руки программиста.
                      Я Easy2 не использую, но по идее там должен быть механизм настройки добавления в head.
                      А datapicker это максимум 2 скрипта.
                      И jquery.min.js лучьше брать с своего сайта, а не тянуться за океан.
                      Quote from: DAS at May 14, 2010, 01:50 AM
                      Большинство это разрешают + noConflict()?
                      При грамотном построениии он не потребуется.