Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.02.2017, 10:05
Аспирант
Отправить личное сообщение для Deymos Посмотреть профиль Найти все сообщения от Deymos
 
Регистрация: 14.01.2013
Сообщений: 33

Выделить блок при прокрутке
Здравствуйте!

Имеется вот такой js-код

<script type="text/javascript">
jQuery(document).ready(function(){

	// = Вешаем событие прокрутки к нужному месту
	//	 на все ссылки якорь которых начинается на #
	jQuery('a[href^="#"]').bind('click.smoothscroll',function (e) {
		e.preventDefault();

		var target = this.hash,
		$target = $(target);

		jQuery('html, body').stop().animate({
			'scrollTop': $target.offset().top  - 100
		}, 900, 'swing', function () {
			window.location.hash = target;
		});
	});

});
</script>


Благодаря ему происходит плавная прокрутка к нужному элементу (по ID). Что нужно добавить чтобы добиться:
1. Выделение блока относительно другой части контента. К примеру у меня есть div. При клике на якорь прокрутить страницу к блоку и затемнить остальной контент кроме текста в блоке.
2. При клике за границы блока - выделение пропадало.

Уже всю голову сломал. Помогите пожалуйста.
Ответить с цитированием
  #2 (permalink)  
Старый 09.02.2017, 10:27
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от Deymos
Уже всю голову сломал.
Например "темнить" можно ДИВами с полупрозрачным фоном, созданными поверх контента...
И удалять те ДИВы если по ним клацнули...

Но задачка не из бесплатных.
Ответить с цитированием
  #3 (permalink)  
Старый 09.02.2017, 10:45
Аспирант
Отправить личное сообщение для Deymos Посмотреть профиль Найти все сообщения от Deymos
 
Регистрация: 14.01.2013
Сообщений: 33

а если так:

<script type="text/javascript">
var divs = jQuery('.pobw'),
    layer = jQuery('#layer');
jQuery(document).ready(function(){

	// = Вешаем событие прокрутки к нужному месту
	//	 на все ссылки якорь которых начинается на #
	jQuery('a[href^="#"]').bind('click.smoothscroll',function (e) {
		e.preventDefault();

		var target = this.hash,
		$target = jQuery(target);

		jQuery('html, body').stop().animate({
			'scrollTop': $target.offset().top  - 100
		}, 900, 'swing', function () {
			window.location.hash = target;
			divs.css('z-index',0);
			jQuery(this).css('z-index',10);
			layer.fadeIn('fast');
		});
	});

});
layer.click(function(){
    jQuery(this).fadeOut('fast');
});
</script>


Затемнить я затемнил, как определить ID, на который клацнули?
Ответить с цитированием
  #4 (permalink)  
Старый 09.02.2017, 10:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Deymos,
Помогите со скриптом
Ответить с цитированием
  #5 (permalink)  
Старый 09.02.2017, 10:50
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Deymos,
Сообщение от Deymos
Затемнить я затемнил, как определить ID, на который клацнули?
http://javascript.ru/node/1588
Ответить с цитированием
  #6 (permalink)  
Старый 09.02.2017, 11:06
Аспирант
Отправить личное сообщение для Deymos Посмотреть профиль Найти все сообщения от Deymos
 
Регистрация: 14.01.2013
Сообщений: 33

а можно для тупых прям носом тыкнуть?

Получается вместо:
var divs = jQuery('.pobw'),


который используется тут:
divs.css('z-index',0);
jQuery(this).css('z-index',10);


подставить ID якоря...

Выход из подсветки уже реализовал:
layer.click(function(){
    jQuery(this).fadeOut('fast');
});
Ответить с цитированием
  #7 (permalink)  
Старый 09.02.2017, 12:36
Аспирант
Отправить личное сообщение для Deymos Посмотреть профиль Найти все сообщения от Deymos
 
Регистрация: 14.01.2013
Сообщений: 33

Все сделал. Спасибо!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Анимация при прокрутке kolhoz jQuery 11 05.03.2015 13:58
Автоматический старт при при горизонтальной прокрутке div блоков admin'ko Элементы интерфейса 3 13.02.2015 09:40
Исчезаение блока при прокрутке страницы gogogo Общие вопросы Javascript 3 28.12.2014 16:45
Как изменить поведение блоков при прокрутке? Szorstki Элементы интерфейса 11 30.11.2014 17:21
Дерганье div-а при прокрутке Vreditel Events/DOM/Window 2 04.03.2011 08:07