Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

lightbox для 3.1.4

Опубликовано:

Заметил что в версии IPB 3.4 все изображения открываются в lightbox. Тогда как в 3.1.4 в lightbox открываются лишь приаттаченные изображения.

Возможно ли это как то пофиксить?

Рекомендованные сообщения

Опубликовано:
  • Автор

Принцип скрипта следующий:

Кстати, этот скрипт работает только в темах, для сообщений. Можно ли такой же скрипт но только с фиксом для блогов?

Опубликовано:

Заметил, что в 3.4 нету листинга изображений в сообщении (если в нем несколько картинок). Подойдет ли этот скрипт для 3.4?

Опубликовано:
Подойдет ли этот скрипт для 3.4?

Нет. Там уже есть лайтбокс для инлайн изображений.

Опубликовано:

Мне нужно добавить только поддержку листинга изображений, а то в 3.4 его нет, как оказалось. Я до того как спросить, все-таки добавил этот скрипт, листинг появился, а после того как Вы сказали, что он не подходит, я его удалил, ничего страшного не случилось с форумом, кеши не нужно обновлять теперь?

 

А как адаптировать этот скрипт, чтобы только листинг картинок остался?

Изменено пользователем Strategius

Опубликовано:

Если работает значит хорошо.

Опубликовано:
  • Автор

@siv1987,

Можно плиз изменить этот скрипт для Блогов? Плиз...

Опубликовано:
  • Автор

3. И самое важное - если изображение-превью, то нажимая на него, сразу картинка превью, то есть картинка в ссылке не срабатывает.

Эта проблема так и остаётся. Без решения её, оставлять Лайтбокс не имеет смысла...

  • 2 года спустя...
Опубликовано:
  • Автор

Самый простой вариант добавить lightbox через js, парсер форума 3.1 не имеет должного функционала.

Добавить в конце шаблона Темы -> topicViewTemplate

А как такой скрипт подкорректировать для приложения Links? Что бы листинг работал для всех изображений в записи?

Опубликовано:

<script type='text/javascript'>
// Описание
var lid = 0;
$$('.link_details img.bbc_img').each(function(img){
   var parent = img.up();
   if(parent.tagName.toLowerCase() == 'a'){
       if(/\.(jpe?g|gif|png|bmp)$/.test(parent.href)){
           parent.writeAttribute('rel', 'lightbox['+lid+'] ' + parent.readAttribute('rel').replace('external'));
       }
   }
   else{
       var a = new Element('a', {'rel': 'lightbox['+lid+']', 'href' : img.getAttribute('src')});
       img.wrap(a);
   }
});
// Комментарии
$$('.comment').each(function(elem){
   var pid = elem.select('.rep_bar')[0].readAttribute('id').replace('rep_comment_', '');
   elem.select('img.bbc_img').each(function(img){
       var parent = img.up();
       if(parent.tagName.toLowerCase() == 'a'){
           if(/\.(jpe?g|gif|png|bmp)$/.test(parent.href)){
               parent.writeAttribute('rel', 'lightbox['+pid+'] ' + parent.readAttribute('rel').replace('external'));
           }
       }
       else{
           var a = new Element('a', {'rel': 'lightbox['+pid+']', 'href' : img.getAttribute('src')});
           img.wrap(a);
       }
   });
});
</script>

Опубликовано:
  • Автор

@newbie,

Большое спасибо!

Опубликовано:
  • Автор

@newbie,

Хотел этот код также и для приложения Tutorials прикрепить, думал что замены lid на a_id (идентификатор статьи) и link_details на post_block хватит для работоспособности кода, однако нет, не сработала.

Подскажите где ещё заменить что бы код сработал и в приложение Tutorials.

Опубликовано:

<script type='text/javascript'>
// Описание
var a_id = 0;
$$('#article_body .post_block img.bbc_img').each(function(img){
   var parent = img.up();
   if(parent.tagName.toLowerCase() == 'a'){
       if(/\.(jpe?g|gif|png|bmp)$/.test(parent.href)){
           parent.writeAttribute('rel', 'lightbox['+a_id+'] ' + parent.readAttribute('rel').replace('external'));
       }
   }
   else{
       var a = new Element('a', {'rel': 'lightbox['+a_id+']', 'href' : img.getAttribute('src')});
       img.wrap(a);
   }
});

// Комментарии
$$('#article_comments .comment').each(function(elem){
   var pid = elem.readAttribute('id').replace('comment_id_', '');
   elem.select('img.bbc_img').each(function(img){
       var parent = img.up();
       if(parent.tagName.toLowerCase() == 'a'){
           if(/\.(jpe?g|gif|png|bmp)$/.test(parent.href)){
               parent.writeAttribute('rel', 'lightbox['+pid+'] ' + parent.readAttribute('rel').replace('external'));
           }
       }
       else{
           var a = new Element('a', {'rel': 'lightbox['+pid+']', 'href' : img.getAttribute('src')});
           img.wrap(a);
       }
   });
});
</script>

Опубликовано:
  • Автор

@newbie,

Большое спасибо!

  • 4 недели спустя...
Опубликовано:
  • Автор

Подскажите пожалуйста как сделать что бы Лайтбокс не срабатывал на изображениях которые находятся внутри ссылок. Какой то фикс отмены. А то ведь если изображение находиться внутри ссылки - всё, переход по ссылке не срабатывает, открывается именно изображение.

Очень нужно.

Опубликовано:

Ну видимо закоментировать или удалить строку

 

parent.writeAttribute('rel', 'lightbox['+a_id+'] ' + parent.readAttribute('rel').replace('external'));

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.