Отключение функции Jquery

196
28 февраля 2018, 10:59

Здравствуйте.

Есть функция на скролл

$(function scrollFunction() {  
          $(window).scroll(function() {
              if($(this).scrollTop() != 0) {
                $('#topNubex').fadeIn();
              } else {
                $('#topNubex').fadeOut();
              }
          });
          $('#topNubex').click(function() {
            $('body,html').animate({scrollTop:0},1000);
          });

      });

Вопрос - можно ли ее убрать при проверке определенных условий? т.е. если ширина экрана больше 1000, кнопка скролла должна быть на экране. Если меньше - не должно быть

Answer 1

Да можно։

$(function scrollFunction() { 
var width = $(window).width();
if(width < 1000){
 $('#topNubex').fadeOut();
return false;
}
          $(window).scroll(function() {
              if($(this).scrollTop() != 0) {
                $('#topNubex').fadeIn();
              } else {
                $('#topNubex').fadeOut();
              }
          });
          $('#topNubex').click(function() {
            $('body,html').animate({scrollTop:0},1000);
          });

      });
Answer 2

$(function() { 
  var $window = $(window); 
  var $nudex  = $('#topNubex'); 
 
  $window.on('load resize' onResize); 
  $nudex.on('click', onClick); 
 
  function onResize() { 
    /* 
    * Что бы событие вообще не триггерилось когда не нужно ... 
    */ 
    $window.off('scroll', onScroll); 
    if($window.width() >= 1000) $window.on('scroll', onScroll); 
  } 
 
  function onScroll() { 
    if($(this).scrollTop() > 0) $nudex.fadeIn(); 
    else $nudex.fadeOut(); 
  } 
 
  function onClick() { 
    $('body, html').animate({ scrollTop: 0 }, 1000); 
  } 
});

READ ALSO
Работа с двумерным массивом &ldquo;Морской бой&rdquo; [требует правки]

Работа с двумерным массивом “Морской бой” [требует правки]

Дано: с помощью одномерного массива нужно эмулировать работу с двумерным массивом, массив должен позволять описывать поле игры морской...

244
NodeJs Как правильно настроить роутинг

NodeJs Как правильно настроить роутинг

Хочу, чтобы в адресной строке, отображалось название страницы на которой нахожусьПрочитал кучу всего, но увы, node js мне пока не подается

262
Как отправить и получить данные в vue-resource?

Как отправить и получить данные в vue-resource?

Собственно для отправки делаю так:

249
PhantomJS много post запросов

PhantomJS много post запросов

Здравствуйте! Нужна помощь при работе с phantomjsЕсть функция:

267