serovpochta
@serovpochta
Лысый

Не работают скрипты по сайту после добавления попап скрипта?

Здесь

После добавления этого:
$('.popup-post-modal-open').bind('click', DimaPopup);
    $('.popup-background').bind('click', Popupclose);


    var $ = jQuery;

    function DimaPopup(e){
      e.preventDefault();
        
        $('.popap-loader').css('display', 'block');

        if (e.target.className.indexOf("gapplayer-wrapper")>=0||e.target.className.indexOf("fvp-dynamic")>=0){
          e.stopPropagation();
          return false;
        }

      var url = $(this).attr('href');

        // А вот так просто меняется ссылка
        if(url != window.location){
            window.history.pushState(null, null, url);
        }
     
      $('.popup-post').addClass('active');
      window.setTimeout(function(){$('.popup-post').scrollTop(0);},50);
      $('body').addClass('active');
      $('html').css('overflow', 'hidden');

		window.offScroll = false;
		$('.popup-post').off('scroll').on('scroll',function(){
		if ((this.scrollTop + $(this).height() + 50)>this.scrollHeight&&!window.offScroll){

		window.offScroll = true;
		}})

    $.ajax(
    {
       type : 'POST',
       url : 'http://' + location.host + '/wp-admin/admin-ajax.php',
       data: { action: 'popup_post', popup_post_id:$(this).parents('.title').children('.post-click-popup').children('span').text()
    },
       success: function(data){                   
        $('.post-generat-content').eq(0).html(data);

        $('.popap-loader').css('display', 'none');
        $('.popup-background').css('display', 'block');
             window.setTimeout(function(){
             if (gapStart) gapStart();},1000);
             var elem = $('.popup-post');
             $('html, body').animate({ scrollTop: elem.offset().top }, 750);
			var tempScrollTop = 50, currentScrollTop = 0; 
			var top1; 
			$('.popup-post.active').scroll(function(){ 
			currentScrollTop = $(this).scrollTop(); 
			if (tempScrollTop < currentScrollTop ){ //Скролим вниз 
			$('.vverh').attr('style', 'display:block;'); 
			$('.vniz').attr('style', 'display:none;');
			tempScrollTop = currentScrollTop; 
			top1 = currentScrollTop; 
			} else if (tempScrollTop > currentScrollTop ) { //Скролим вверх 
			$('.vverh').attr('style', 'display:none;');
			$('.vniz').attr('style', 'display:block;'); 
			tempScrollTop = currentScrollTop; 
			} 
			}); 
			$('.vniz').click(function(){ 
			$('.popup-post.active').animate({ scrollTop: top1 }, '50'); 
			});
			$('.vverh').click(function(){ 
			$('.popup-post.active').animate({ scrollTop: $('.post-generat-content').offset().top }, '50'); 
    });

             $('.close').bind('click', Popupclose);
             //window.setTimeout(function(){$('.popup-post').scroll();},1000);
             },
             error: function(error)
             {
             console.log('Ошибка');
             }
    });
   }
   var window_location = window.location.href;
   function Popupclose() {
      $('.popup-background').css('display', 'none');
      $('.popup-post').removeClass('active');
     
      window.history.pushState(null, null, window_location);
      $('body').removeClass('active');
      $('html').css('overflow', 'auto');
   }


Другие скрипты не работают, но работает попап =)

Например не отрабатывает масонри кладка и несколько других работающих по клику
В целом, работает только попап скрипт
Что может быть не так?

Спасибо за внимание
  • Вопрос задан
  • 275 просмотров
Решения вопроса 1
AlexMaxTM
@AlexMaxTM
Не совсем понял зачем эта строка?
var $ = jQuery;
знак $ ведь раньше уже был определен, а вы его ещё раз переопределяете.
Бросилось еще в глаза
$('.popap-loader').css('display', 'none');
действительно popap а не popup?
А в остальном вроде всё верно, но надо дебажить чтобы понять почему не работает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы