Как работает popup окно - Страница 2 - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

  • 3 Страниц +
  • 1
  • 2
  • 3

Как работает popup окно

#16 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 12 Декабрь 2015 - 13:57

Спс, вот только закрываться окно перестало...

Копаю
hideClose: true,
ничего не выходит

            elem.observe('mouseout', function(e){		
                if(popup)
                   popup.kill();
            });		


Тоже не работает...
0

#17 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 12 Декабрь 2015 - 15:01

  
$$('.blclass').each(function(elem){ 

  elem.observe('mouseover', function(e){
		   
      Event.stop(e); 
           
      popup = new ipb.Popup('popup', {  
				type: 'balloon',
				stem: true,
				attach: { target: elem, position: 'auto'},
				hideAtStart: false,
				initial: 'hml',
				hideClose: true,
				w: '320px;',					
      });

      elem.observe('mouseout', function(e){
          if(popup)
                popup.kill();
       
   });
});


Почему модальные окна закрываются только по щелчку?

Сообщение изменено: Testweb (12 Декабрь 2015 - 15:02)

0

#18 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 12 Декабрь 2015 - 18:55

:unsure: Не подскажите? :unsure:
0

#19 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 721
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 12 Декабрь 2015 - 19:02

У меня закрывается и при mouse out. Смотрите в консоли ошибок и дебажите переменную popup. Она желательно быть локальной а не глобальной.
0

#20 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 12 Декабрь 2015 - 19:30

Я хз, так
$$('.blclass').each(function(elem){ 

  elem.observe('mouseover', function(e){
           
      Event.stop(e); 
           
      popup = new ipb.Popup('popup', {  
                type: 'balloon',
                stem: true,
                attach: { target: elem, position: 'auto'},
                hideAtStart: false,
                initial: 'hml',
                hideClose: true,
                w: '320px;',  

	    this.observe('mouseout', function(e){
		 pop.hide();	
            });	              
      });

});


работает, но не совсем верно. После закрытия, повторно не откроется... Ошибки в консоле отсутствуют

Я хз что делать...
0

#21 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 12 Декабрь 2015 - 20:19

Окна по щелчку закрываются, почему?

Даже если убрать
this.observe('mouseout', function(e){
pop.hide();
});
0

#22 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 721
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 12 Декабрь 2015 - 20:27

Вы в консоли смотрели? Во первых в этом скрипте есть синтаксические ошибки, возьмите нормальный редактор и приведите код в порядок.
0

#23 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 721
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 12 Декабрь 2015 - 20:50

Я помню что там были какие-то косяки с аттачем евентов к элементам. Просто тупо не хотели повторно срабатывать. С чем это связано так и не разобрался, возился долго, в итоге тоже какие-то костыли приделал.
Но в данном случае ошибка как минимум в { target: elem, position: 'auto'} - elem это переменная цикла, вместо нее нужно использовать this.
popup - одна переменная для всех элементов. Попробуйте вместо нее массив, или непосредственно указать ее к элементу this.popup = new ipb.Popup
0

#24 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 721
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 12 Декабрь 2015 - 21:19

Вот рабочий пример с делегированием

<div id="test">
	<a href="#" class="blclass" data-id=1>Test 1</a><br>
	<a href="#" class="blclass" data-id=2>Test 2</a><br>
</div>

<script>
var popup;
$('test').observe('mouseover', function(event) {
	var row = event.findElement('a.blclass');
	if(row){
		popup = new ipb.Popup('popup', {
					type: 'balloon',
					stem: true,
					attach: {target: row},
					hideAtStart: false,
					initial: row.innerHTML,
					w: '320px;'
		});
	}
});
$('test').observe('mouseout', function(event) {
	var row = event.findElement('a.blclass');
	if(row){
		if(popup){
			popup.kill();
			popup = false;
		}
	}
});
</script>

0

#25 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 12 Декабрь 2015 - 21:38

Рабочий ;)

Без обертки "<div id="test">", не получится никак?
0

#26 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 721
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 12 Декабрь 2015 - 21:45

Вы можете делегировать на любой общий родительский элемент. В данном случае это пример для наглядности. Костыль конечно, но я так и не разобрался что там с аттачами евентов. Проблема есть именно с типом balloon который прикрепляет модальное окно к элементу.
1

#27 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 12 Декабрь 2015 - 21:50

Спасибо, сойдет :rolleyes:
0

#28 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 13 Декабрь 2015 - 00:20

На счет временного интервала.

Гляжу есть такой параметр как "delay: 2000,", в моем случаи он не работает, почему?
0

#29 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 2 166
  • Регистрация: 26-Октябрь 11
  • Репутация: 814
  • IPB version:I have no IPB
 

Отправлено 13 Декабрь 2015 - 08:48

Просмотреть сообщениеTestweb сказал(а):

Гляжу есть такой параметр как "delay: 2000,",

Где?

Просмотреть сообщениеTestweb сказал(а):

в моем случаи он не работает, почему?

Потому что нужно читать внимательно описание.

Цитата

delay: this is an object with keys 'show' and 'hide'


delay: { show: 2000, hide: 4000 },

2

#30 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 2 166
  • Регистрация: 26-Октябрь 11
  • Репутация: 814
  • IPB version:I have no IPB
 

Отправлено 13 Декабрь 2015 - 09:35

Просмотреть сообщениеTestweb сказал(а):

Не удается подобрать настройки, чтобы мол так же всплывало окно, а не по центру...

Тут используются Hovercards.
Вообще можно их задействовать.
1

Сообщить об этой теме:


  • 3 Страниц +
  • 1
  • 2
  • 3


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна