Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.10.2013, 14:59
Аватар для Nailya
Кандидат Javascript-наук
Отправить личное сообщение для Nailya Посмотреть профиль Найти все сообщения от Nailya
 
Регистрация: 05.04.2013
Сообщений: 135

Помогите разобраться в коде
Всем привет!

У меня есть вот такой код:

$('body').on('click', '.trigger', function(e){ 
	e.preventDefault();
	$('#test-modal').modal().open();


Вопрос! зачем перед preventDefault() использовать параметр e
Ответить с цитированием
  #2 (permalink)  
Старый 06.10.2013, 17:38
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Беда, беда...
Ок. Зачем перед .on(...) использовать $('body') ?
Зачем перед .modal() использовать $('#test-modal')? Зачем перед .open() использовать $('#test-modal').modal()?

preventDefault - это свойство объекта e (его метод).
Если быть точнее - это свойство прототипа объекта e (который ссылается на Event.prototype).
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 06.10.2013, 18:14
Аватар для Nailya
Кандидат Javascript-наук
Отправить личное сообщение для Nailya Посмотреть профиль Найти все сообщения от Nailya
 
Регистрация: 05.04.2013
Сообщений: 135

вот код, в котором я пытаюсь разобрать логику открытия модального окна
jQuery(function($){ //jQuery - эти озночает, что дальше идет код jQuery; $ в данном контексте - переменная
			// bind event handlers to modal triggers
		
			$('body').on('click', '.trigger', function(e){ //$() - начало использования скрпта jQuery, параметр $() - ссылка на контейнер html, .on() - вызов некого события, "click" - тип вызываемого события, ".trigger" - идентификатор объекта, к которому применяется событие,function() - это фукция, которая выполняется в случае возникновения события.
				e.preventDefault();//метод preventDefault() отменяет стандартную реакция на событие 
				$('#test-modal').modal().open();//modal().open(); - открывает модальное окно, описанную в контейнере с идентификатором #test-modal
			});

			// attach modal close handler
			$('.modal .close').on('click', function(e){
				e.preventDefault();
				$.modal().close();
			});

			// below isn't important (demo-specific things)
			$('.modal').on('click', function(e){
				e.stopPropagation();
				$('.modal').toggle();
			});
		});


<body>
	<div class="modal" id="test-modal" style="display: none">
			<a href="#" class="close">&times;</a>

			<object class="Clip">
				<param value="Belissimo.swf" name="movie">
				<embed src="Belissimo.swf">
			</object>
	</div>				
		 
		  <a href="#" class="trigger">Open modal</a>
</body>


Не понятно, что такое объект е в данном контексте?

Последний раз редактировалось Nailya, 06.10.2013 в 18:17.
Ответить с цитированием
  #4 (permalink)  
Старый 06.10.2013, 20:25
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

В функцию-обработчик события передается объект. e - это сокращение от event.
Сделайте console.log(e) да посмотрите какие свойства имеет этот объект.
Например для событий мыши в объекте можно найти координаты x/y, элемент, на котором возникло событие, номер кнопки мыши, которую нажали, состояние кнопок-модификаторов (Ctrl, Shift, Alt) методы stopPropagation, preventDefault и тд. Стоит заметить что jQuery передает свой объект, не нативный - в целях достижения кроссбраузерности. Но также есть и ссылка на нативный объект e.originalEvent, доступ к которому обычно не требуется.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #5 (permalink)  
Старый 07.10.2013, 09:49
Аватар для Nailya
Кандидат Javascript-наук
Отправить личное сообщение для Nailya Посмотреть профиль Найти все сообщения от Nailya
 
Регистрация: 05.04.2013
Сообщений: 135

понятно) danik.js, спасибо за разъяснения
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите разобраться kachka Ваши сайты и скрипты 9 18.12.2012 18:23
Помогите разобраться в коде select.find('#edit_my_location').hide().prev().sho w(); vuler Общие вопросы Javascript 0 21.02.2012 14:01
Помогите разобраться с кодом. TheWanderer Общие вопросы Javascript 10 17.04.2010 13:41
Помогите пожалуйста разобраться Kupu4 Ваши сайты и скрипты 0 21.01.2010 10:44
Помогите разобраться с галереей IMAGIN yana_studio Общие вопросы Javascript 4 12.12.2009 17:24