2014-02-03 4 views
0

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

Есть ли что-нибудь, чтобы исправить следующий код?

Спасибо.

<head> 
<title> 
<?php echo $bsiCore->config['conf_apartment_name'];?> 
</title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> 
<!-- Google fonts --> 
<link href='http://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'> 
<link href='http://fonts.googleapis.com/css?family=Pontano+Sans' rel='stylesheet'  type='text/css'> 
<link href='http://fonts.googleapis.com/css?family=Shadows+Into+Light' rel='stylesheet' type='text/css'> 
<!-- end google fonts --> 
<!--nav--> 




<link href="css/style.css" rel="stylesheet" type="text/css" /> 
<link rel="stylesheet" href="css/craftyslide.css" /> 
<link href="js/menu/superfish.css" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> 
<script src="js/craftyslide.min.js"></script> 
<link href="web/css/style.css" rel="stylesheet" type="text/css" media="all" /> 
<script> 
$(document).ready(function(){ 
    $("#slideshow").craftyslide({ 
     'width': 600, 
     'height': 350, 
     'pagination': false, 
     'fadetime': 1000, 
     'delay': 5000 
    }); 
}); 
</script> 
<script type="text/javascript" src="js/menu/superfish.js"></script> 

<link rel="stylesheet" type="text/css" href="css/custom-theme/jquery-ui-1.8.22.custom.css" /> 
<script type="text/javascript" src="js/jquery-ui.min.js"></script> 
<script src="web/js/jquery.min.js"></script> 



<?php if($bsiCore->config['conf_rental_type']==1){ ?> 
<script type="text/javascript"> 

$(document).ready(function(){ 
$.datepicker.setDefaults({ dateFormat: '<?php echo $bsiCore->config['conf_dateformat'];?>' }); 
$("#txtFromDate, #txtToDate").datepicker({ 
     minDate: 0, 
     defaultDate: "+1w", 
     changeMonth: true, 
     numberOfMonths: 2, 
     onSelect: function(selectedDate) { 
      if(this.id == 'txtFromDate'){ 
       var dateMin = $('#txtFromDate').datepicker("getDate"); 
       var rMin = new Date(dateMin.getFullYear(), dateMin.getMonth(),dateMin.getDate() +   <?php echo $bsiCore->config['conf_minimum_stay'];?>); 
       var rMax = new Date(dateMin.getFullYear(), dateMin.getMonth(),dateMin.getDate() +   <?php echo $bsiCore->config['conf_maximum_stay'];?>); 
       $('#txtToDate').datepicker("option","minDate",rMin); 
       $('#txtToDate').datepicker("option","maxDate",rMax);      
      } 

     } 
    }); 


$("#datepickerImage").click(function() { 
$("#txtFromDate").datepicker("show"); 
}); 
$("#datepickerImage1").click(function() { 
$("#txtToDate").datepicker("show"); 
}); 

$('#btn_appmt_search').click(function() {  
    if($('#txtFromDate').val()==""){ 
     alert('Please Select Check In Date.'); 
     return false; 
    }else if($('#txtToDate').val()==""){ 
     alert('Please Select Check Out Date.'); 
     return false; 
    } else { 
     return true; 
    }  
}); 
}); 
</script> 
<?php } elseif($bsiCore->config['conf_rental_type']==2){ ?> 
<script type="text/javascript"> 
$(function() { 
$.datepicker.setDefaults({ dateFormat: '<?php echo $bsiCore->config['conf_dateformat'];?>', minDate: new Date(), numberOfMonths: 2 }); 
$("#txtFromDate1").datepicker(

    { beforeShowDay: function(day) { 
     var day = day.getDay(); 
     if (day == <?php echo $bsiCore->config['conf_week_checkin_day'];?>) { 
      return [true, "somecssclass"] 
     } else { 
      return [false, "someothercssclass"] 
     } 
    } 
    }); 
    $("#datepickerImage").click(function() { 
     $("#txtFromDate1").datepicker("show"); 
    }); 

    $('#btn_appmt_search').click(function() {  
     if($('#txtFromDate1').val()==""){ 
      alert('Please Select Check In Date.'); 
      return false; 
     } else { 
      return true; 
     }  
    }); 
}); 
</script> 
<?php } elseif($bsiCore->config['conf_rental_type']==3){ ?> 

<script type="text/javascript"> 
$(document).ready(function() { 
var currentTime = new Date()  
var minDate1 = new Date(currentTime.getFullYear(),currentTime.getMonth() +2, -1); 
$('#txtMonthIn').datepicker({ 
changeMonth: true, 
changeYear: true, 
dateFormat: 'MM yy', 
    showButtonPanel: true, 
    minDate: minDate1, 

onClose: function() { 
    var iMonth = $("#ui-datepicker-div .ui-datepicker-month :selected").val(); 
    var iYear = $("#ui-datepicker-div .ui-datepicker-year :selected").val(); 
    $(this).datepicker('setDate', new Date(iYear, iMonth, 1)); 
}, 

beforeShow: function() { 
    if ((selDate = $(this).val()).length > 0) 
    { 
     iYear = selDate.substring(selDate.length - 4, selDate.length); 
     iMonth = jQuery.inArray(selDate.substring(0, selDate.length - 5),  $(this).datepicker('option', 'monthNames')); 
     $(this).datepicker('option', 'defaultDate', new Date(iYear, iMonth, 1)); 
     $(this).datepicker('setDate', new Date(iYear, iMonth, 1)); 
    } 
} 
}); 

$("#txtMonthIn1").click(function() { 
$("#txtMonthIn").datepicker("show"); 
}); 

$('#btn_appmt_search').click(function() {  
    if($('#txtMonthIn').val()==""){ 
     alert('Please Select Check in Month.'); 
     return false; 
    } else { 
     return true; 
    }  
}); 

}); 
</script> 
<style> 
.ui-datepicker-calendar { 
display: none; 
} 
.ui-datepicker { 
width: 17em; 
padding: .2em .2em 0; 
display: none; 
font-size:14px; 
} 
</style> 
<?php } ?> 


<script> 
    $(function() { 
     var pull  = $('#pull'); 
      menu  = $('nav ul'); 
      menuHeight = menu.height(); 

     $(pull).on('click', function(e) { 
      e.preventDefault(); 
      menu.slideToggle(); 
     }); 

     $(window).resize(function(){ 
      var w = $(window).width(); 
      if(w > 320 && menu.is(':hidden')) { 
       menu.removeAttr('style'); 
      } 
     }); 
    }); 
</script> 

</head> 
+0

Является ли "craftyslide.min.js" плагином jQuery? Если это так, вы должны убедиться, что он совместим с jQuery 1.5.1. Или вы говорите о своих собственных сценариях? –

+0

Первое, что вы делаете, это посмотреть в консоли ошибок, чтобы узнать, есть ли какие-либо ошибки, которые приводят вас в интересном направлении. Следующее, что вы делаете, - это поиск совместимости версии jQuery каждого плагина jQuery, который вы используете, и того, какую версию jQuery вы используете. – jfriend00

ответ

1

Вы включаете jQuery дважды, один раз из CDN и снова после включения jQuery UI. Это вызовет глобальные конфликты имен и, возможно, ошибки, появляющиеся в консоли JS.

0

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

Это создаст конфликт jQuery .

Вы можете использовать jQuery.noConflict() в верхней части страницы, чтобы решить эту проблему (если это действительно проблема).

Read more about jQuery.noConflict()

Надеется, что это помогает!

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