scrollTop не работает на IE11

Вы правы, в Stackru существует множество похожих запросов, но, прочитав / проанализировав как минимум 20, я не нашел правильного ответа. Я проверил, что мой сценарий содержал

$('body,html').animate({scrollTop:$(this).offset().top},800);

вместо

$("body").animate({scrollTop:$(this).offset().top},800);

как указано здесь: scrollTop не работает на Firefox и IE? но безрезультатно. Я также попробовал несколько других модификаций, которые остановили его работу во всех браузерах.

Хотя скрипт работает безупречно во всем, что я проверял (Chrome, Firefox, Opera), он не работает должным образом в Windows 8.1 / IE11. Следует скрыть #featuring_wrap, показать #DIV_X и прокрутить до него. Делает все, кроме свитка. Боковые панели становятся выше, но не переходят в DIV.

Я прочитал в другом посте здесь, что jQuery v1.x был для <= IE8 и v2.x был для>= IE10. Может ли это быть виновником? Надеюсь, что нет - я уже пробовал использовать v2.1.1, но все остальное на странице перестало работать (слайдер, другие функции скрытия / отображения).

Вот две версии сценария. Первое, что я использую. Нет разницы, когда я использую вторую версию.

$(document).ready(function(){
  $("#featured-product-nav a").click(function(){
    $("#featuring_wrap").hide();
      var id = $(this).attr('id');
      id = id.split('_');
      $("#divs_container > div").removeClass("active");
      $("#divs_container > #div_"+id[1]).addClass("active");
      $("#divs_container > div:not(.active)").slideUp();
      $("#divs_container > div.active").slideToggle(function(){
         $('body,html #divs_container > #div_"+id[1]').animate({
            scrollTop: $("#div_"+id[1]).offset().top
         }, 800);
      });
   });

   return false
});


$(document).ready(function(){
 $("#featured-product-nav a").click(function(){
    $("#featuring_wrap").hide();
    var id =  $(this).attr('id');
    id = id.split('_');
    $("#divs_container div").removeClass("active");
    $("#divs_container #div_"+id[1]).addClass("active");
    $("#divs_container div:not(.active)").slideUp();
    if($("#divs_container #div_"+id[1]).hasClass("open")){
       $("#divs_container #div_"+id[1]).removeClass("open").slideUp();
    }

   else{
       $("#divs_container .open").slideUp().removeClass("open");
       $("#divs_container #div_"+id[1]).addClass("open").slideDown();
       $('body,html #divs_container #div_"+id[1]').animate({
          scrollTop: $("#div_"+id[1]).offset().top
       }, 800);
   }
 });
});

Живой код здесь: http://www.healthfirst.com/dental-waste/Sharps-Recovery-Dental/index.html

Какие-либо предложения?

0 ответов

Другие вопросы по тегам