Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.06.2014, 09:36
Интересующийся
Отправить личное сообщение для Нарек Посмотреть профиль Найти все сообщения от Нарек
 
Регистрация: 23.06.2014
Сообщений: 17

Отключение скрипта при определенном разрешении.
Здравствуйте! Есть такой скрипт

<script type="text/javascript">	
	Modernizr.load({
		test: Modernizr.csstransforms3d && Modernizr.csstransitions,
		yep : ['http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js','js/jquery.hoverfold.js'],
		nope: 'css/fallback.css',
		callback : function( url, result, key ) {
			
		if( url === 'js/jquery.hoverfold.js' ) {
			$( '.portfolio-item-view' ).hoverfold();
		}
	}
});
</script>


который подключает вот этот

( function( $ ) {
	
	$.fn.hoverfold = function( args ) {

		this.each( function() {
		
			$( this ).children( '.view' ).each( function() {
			
				var $item 	= $( this ),
					img		= $item.children( 'img' ).attr( 'src' ),
					struct	= '<div class="slice s1">';
						struct	+='<div class="slice s2">';
							struct	+='<div class="slice s3">';
								struct	+='<div class="slice s4">';
									struct	+='<div class="slice s5">';
									struct	+='</div>';
								struct	+='</div>';
							struct	+='</div>';
						struct	+='</div>';
					struct	+='</div>';
					
				var $struct = $( struct );
				
				$item.find( 'img' ).remove().end().append( $struct ).find( 'div.slice' ).css( 'background-image', 'url(' + img + ')' ).prepend( $( '<span class="overlay" ></span>' ) );
				
			} );
			
		});

	};

} )( jQuery );


Вопрос. Как сделать, что бы скрипт подключился (или работал) ТОЛЬКО при разрешении ВЫШЕ 480px, так как ниже этого он мне мешает.. Буду очень благодарен.
P.S. Если тема не в том разделе, прошу прощения, переместите, пожалуйста, уважаемые модераторы.
Ответить с цитированием
  #2 (permalink)  
Старый 30.06.2014, 16:12
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Разрешение чего? Экрана? Есть такой объект screen, там вся информация - http://www.w3schools.com/js/js_window_screen.asp
Ответить с цитированием
  #3 (permalink)  
Старый 30.06.2014, 16:18
Интересующийся
Отправить личное сообщение для Нарек Посмотреть профиль Найти все сообщения от Нарек
 
Регистрация: 23.06.2014
Сообщений: 17

Сообщение от Erolast Посмотреть сообщение
Разрешение чего? Экрана? Есть такой объект screen, там вся информация - http://www.w3schools.com/js/js_window_screen.asp
Да, извиняюсь, разрешение браузера.
Ответить с цитированием
  #4 (permalink)  
Старый 30.06.2014, 17:00
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Размеры окна, может быть? window.innerHeight и window.innerWidth используй.
Ответить с цитированием
  #5 (permalink)  
Старый 30.06.2014, 17:21
Интересующийся
Отправить личное сообщение для Нарек Посмотреть профиль Найти все сообщения от Нарек
 
Регистрация: 23.06.2014
Сообщений: 17

Сообщение от Erolast Посмотреть сообщение
Размеры окна, может быть? window.innerHeight и window.innerWidth используй.
Ну мне просто надо вот так:
Если ширина браузера больше 480px скрипт работает нормально, как и должен.
Если ширина браузера ниже 480px (неважно из края тянут или через телефон смотрят) скрипт отключается полностью.
Потом если снова ресайзить будут, то выше 480px снова включается)
Ответить с цитированием
  #6 (permalink)  
Старый 30.06.2014, 17:33
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Ну так делай, в чем проблема? Я тебе сказал, откуда значения брать.
Ответить с цитированием
  #7 (permalink)  
Старый 30.06.2014, 18:06
Интересующийся
Отправить личное сообщение для Нарек Посмотреть профиль Найти все сообщения от Нарек
 
Регистрация: 23.06.2014
Сообщений: 17

Сообщение от Erolast Посмотреть сообщение
Ну так делай, в чем проблема? Я тебе сказал, откуда значения брать.
Ну я пока с синтаксисом разбираюсь, учу где то дней 5 всего, до этого использовал только готовые решения) Если Вас не затруднит, можете набросать код, если конечно это не трудно и делается очень быстро?
Ответить с цитированием
  #8 (permalink)  
Старый 30.06.2014, 18:52
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Нельзя этот плагин просто так "отключить". Он не перманентно действует. Он один раз запускается, изменяет структуру элементов с классом '.portfolio-item-view' и идет отдыхать. Можно просто не запускать его, если высота окна меньше, чем позволено, но после того, как он уже отработал, надо будет элемент восстанавливать, а восстановить его невозможно без знания его первоначального состояния. Для того, чтобы отслеживать изменение размеров окна, тебе нужно повесить обработчик на событие window.onresize, да. Вперед)
Ответить с цитированием
  #9 (permalink)  
Старый 30.06.2014, 19:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 32,038

вариант не запускать плагин изначально если экран меньше 480 тоды без resize

if( url === 'js/jquery.hoverfold.js' && window.innerWidth > 480)
Ответить с цитированием
  #10 (permalink)  
Старый 30.06.2014, 21:00
Интересующийся
Отправить личное сообщение для Нарек Посмотреть профиль Найти все сообщения от Нарек
 
Регистрация: 23.06.2014
Сообщений: 17

Сообщение от Erolast Посмотреть сообщение
Нельзя этот плагин просто так "отключить". Он не перманентно действует. Он один раз запускается, изменяет структуру элементов с классом '.portfolio-item-view' и идет отдыхать. Можно просто не запускать его, если высота окна меньше, чем позволено, но после того, как он уже отработал, надо будет элемент восстанавливать, а восстановить его невозможно без знания его первоначального состояния. Для того, чтобы отслеживать изменение размеров окна, тебе нужно повесить обработчик на событие window.onresize, да. Вперед)
Спасибо, попробую разобраться.

Сообщение от рони Посмотреть сообщение
вариант не запускать плагин изначально если экран меньше 480 тоды без resize

if( url === 'js/jquery.hoverfold.js' && window.innerWidth > 480)
Нет, к сожалению этот вариант не катит, так как при увеличении он не возобновляется
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вставить элемент скрипта в определенном месте на странице disee Firefox/Mozilla 2 15.07.2015 08:26
Как при разном разрешении micscr Оффтопик 9 26.11.2009 09:42
Реализация скрипта. Изменение дерева при вводе каждой следующей буквы слова. WDha AJAX и COMET 0 03.11.2009 23:19
Выполнение скрипта при нажатии Entet в текстовм поле Vlasssov Общие вопросы Javascript 4 23.08.2009 22:31
Срабатывание скрипта при загрузке страницы bormax Общие вопросы Javascript 3 03.04.2008 08:57