2016-01-11 7 views
0

У меня есть сайт с большим количеством продуктов, внутри списка у меня есть ссылка на FancyBox которая открывает полную детализацию продукт (файл detail.php)Ajax загруженного JQuery вопрос в IE

<a class="fancy fancy'.$_GET['type'].'" href="detail.php?id='.$equip[$c]['equipId'].'">'.$equip[$c]['equipment'].'</a>

Проблема в том, что у меня есть некоторый скрипт jquery внутри detail.php, он отлично работает в каждом браузере, кроме Internet explorer, в котором я получаю ошибку $ не определен или JQuery не определен. Выше код JQuery в detail.php

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script> 
    <script>window.jQuery || document.write('<script type="text/javascript" src="js/vendor/jquery-1.10.1.min.js"><\/script>')</script> 


    <script type="text/javascript" src="Resources/Script/jquery.imageLens.js"></script> 
      <script type="text/javascript" src="Resources/Script/jquery.nicescroll.js"></script> 
     <script> 
     window.onload = function(){ 

      $("#<?php echo $_GET['id'];?>").imageLens({borderSize: 4, borderColor: "#FFF",lensSize: 200,imageSrc: "<?php echo "Resources/Image/equipamiento".$row['link'];?>_B.jpg"}); 
      $(".niceScroll").niceScroll({cursorborderradius:"0px",cursorwidth:4,cursoropacitymin:0.5,cursoropacitymax:0.7,background:"#c9c9c9"}); 
     } 
     $("#catDesc<?php echo $_GET['id'];?>").click(function(){ 
      if(!$("#catDesc<?php echo $_GET['id'];?>").hasClass("active")) 
      { 
       $("#tech<?php echo $_GET['id'];?>").fadeOut('fast',function(){ 
        $("#desc<?php echo $_GET['id'];?>").fadeIn('fast') 
        $("#catDesc<?php echo $_GET['id'];?>").addClass("active") 
        $("#catTech<?php echo $_GET['id'];?>").removeClass("active") 
       }) 
      } 
     }) 
     $("#catTech<?php echo $_GET['id'];?>").click(function(){ 
      if(!$("#catTech<?php echo $_GET['id'];?>").hasClass("active")) 
      { 
       $("#desc<?php echo $_GET['id'];?>").fadeOut('fast',function(){ 
        $("#tech<?php echo $_GET['id'];?>").fadeIn('fast') 
        $("#catTech<?php echo $_GET['id'];?>").addClass("active") 
        $("#catDesc<?php echo $_GET['id'];?>").removeClass("active") 
       }) 
      } 
     }) 
     </script> 

ответ

0

Похоже, ваш Jquery не определен, потому что вы ссылки на CDN, и это проблема безопасности в некоторых версиях IE. Я бы рекомендовал загружать jquery и ссылаться на него локально и видеть, если это устраняет вашу проблему.

0

Всякий раз, когда у вас есть $ is not defined, вы не скачиваете библиотеку, которую используете. Это может быть вызвано IE, но я также вижу, что вы используете "window.onload", и это «обычно» плохая идея (особенно для IE) при запуске javascript.

Моя догадка window.onload ведет себя по-другому и, возможно, перезагружает window. Это может быть причиной того, что $ больше не определен и библиотека не загружается. Что-то нужно иметь в виду.

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