2014-10-23 6 views
0

Ok У меня есть сайт со старой версии JQuery, то я импортировал МОДУЛЬ, где я есть более новая версия JQuery, в моей странице MODUL я есть эта строка JQueryJquery конфликт между двумя версиями

<script src="http://code.jquery.com/jquery-1.10.2.js"></script> 
<script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> 

Как-то я имеют конфликт. Я не могу удалить старую версию из заголовка, потому что некоторая функция не работает, с другой стороны на моей странице модуля, если я удаляю новую функцию spinner функции dont. Я не могу использовать обе версии jquery в одно и то же время. есть какой-то способ решения этого конфликта.

код, где я есть ошибки: В этом сценарии я нужна более старая версия не ранее загружена новая версия JQuery-1.10.2.js

var notice = new Array(); 

$(document).ready(function() { 
    /*setTimeout(function(){ $(".notice").fadeTo('slow',1), 500; }); 
    setTimeout(function(){ $(".notice").fadeTo('slow',0.4); }, 1500);*/ 
    /*setTimeout(function(){ 
     $(".notice").animate({ backgroundColor: '#B8B8B8' }, 1000) 
    });*/ 

    setTimeout(function(){ 
      $(".notice").animate({ backgroundColor: '#e0e0e0' }, 1000) 

    }); 

    $.safetynet({ 

     message : isDirtyWarning 


     }); 




}); 

/** 
* Funkcija ce Sve vrednosti Combo Boksa upisati u hidden polje razdvojeno 
* zarezom 
* 
* @param hidden_field_id 
* @return 
*/ 
function ComboFieldsToValue(combo_selector, hidden_field_id) { 
    var vrednosti = ""; 

    $(combo_selector + ' option').each(function() { 
     vrednosti += $(this).val() + ','; 
    }); 
    $(hidden_field_id).attr({ 
     value :vrednosti.substring(0, vrednosti.length - 1) 
    }); 
    // alert($(hidden_field_id).attr("value")); 
} 

/** 
* Proverava da li Combo ima item sa zadatom vrednoscu 
* Vraca true ako ima, false ako nema 
* @param combo_selector 
* @param key 
* @return 
*/ 
function IsItemInCombo(combo_selector, key) { 
    var is_in_combo = false; 
    $(combo_selector + ' option').each(function() { 
     if ($(this).val() == key) { 
      is_in_combo = true; 
     } 
    }); 
    return is_in_combo; 
} 

/** 
* Potrda brisanja 
* @param link 
* @return 
*/ 
function PotvrdiBrisanje(link, str) { 
    if(str == "") str = "Potvrdi brisanje?"; 

    if (confirm("" + str)) { 
     document.location = link; 
    } 
} 

function ajaxPotvrdiBrisanje(link, str, autoconfirm, flexi_id) { 
    if(str == "") str = "Potvrdi brisanje?"; 
    if(autoconfirm == "") autoconfirm = false; 
    if(flexi_id == "" || !flexi_id) flexi_id = 'flex1'; 

    if (autoconfirm || confirm("" + str)) { 
     $.ajax({ 
      url: link, 
      async : false, 
      success: function(data) { 
      if (data.substr(0, 4) == "msg:") { 
       notice[notice.length] = data.substr(4,data.length); 
      } 
      } 
     }); 
    } 
    return false; 
} 
function addToNotice(data) 
{ 
    if (data.substr(0, 4) == "msg:") { 
     notice[notice.length] = data.substr(4,data.length); 
    } 
} 
function PrikaziNotice() { 
    if (notice.length == 0) return; 

    $('p.flexy_notice').html(''); 
    $('p.flexy_notice').css({ backgroundColor: '#FB2D2B' }); 
    $('p.flexy_notice').hide(''); 

    /* 
    * Uknjamoi osmnovni notce 
    * 
    */ 

    if ($('.notice').length != 0) { 
     $('.notice').hide(); 
    } 
    html = ""; 
    for (var i in notice) { 
     html += '<p>' + notice[i] + '</p>'; 
    } 

    $('p.flexy_notice').html(html); 
    $('p.flexy_notice').show(); 
    $(".flexy_notice").animate({ backgroundColor: '#e0e0e0' }, 1000); 

    notice = new Array(); 
} 

function reloadFlexi() { $("#flex1").flexReload(); } 

function ShowAudit(id) { 
    $(".audit_" + id).toggle(); 
} 
function setDirtyTiny(){ 
$.safetynet.raiseChange($('textarea')); 
} 

Может кто-нибудь объяснить мне, как настроить этот файл JS

+0

Вы должны использовать режим noConflict для использования двух версий JQuery на той же странице HTTP : //stackoverflow.com/questions/1566595/can-i-use-multiple-versions-of-jquery-on-the-same-page – Matteo

+0

не уверены, как они могут конфликтовать, но первый - просто *** jQuery ** *, а второй - *** jQuery UI ***. jQuery UI - это некоторое расширение для jQuery (на основе jQuery). Так было бы ужасно, если бы они могли столкнуться. –

+0

no it ui для второй страницы только я не пишу jquery в заголовке –

ответ

0

Если вам нужно запустить две версии JQuery, вы можете использовать noconflict.

Пример:

<script src="http://code.jquery.com/jquery-1.10.2.js"></script> 
<script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> 
<script> 
    newJquery = jQuery.noConflict(true); 
    newJquery(document).ready(function() { 
    ... 
    ... 
0

Просто добавьте в ваш HTML-страницу, в которой происходит конфликт:

<script> 
    $.noConflict(); 
</script> 
Смежные вопросы