ForumD.ru - Дизайн для форумов и техническая поддержка

Объявление

Акция! Дизайн «MyBB Technical Support»

Дизайн для форума MyBB в тематике компьютерных сообществ или технической поддержки
Стоимость при покупке эксклюзивно: 2000р 1200р
Скидка 40%. В стоимость входит настройка и корректировка дизайна.

Подробнее

Дизайн «Warlords of Draenor»

Детализированный rpg-дизайн для MyBB форума гильдии «Warlords of Draenor»
Стоимость при покупке эксклюзивно: 6300р
В стоимость входит настройка и корректировка дизайна под ваш проект.

Подробнее

Светлый дизайн в фентези стиле с аниме-графикой

Макет для светлого дизайна в фентези стиле с аниме-графикой.
Стоимость: 2600р*
Дизайн продается эксклюзивно (в одни руки).

Подробнее

Дизайн для MyBB форума гильдии WoW Exodar

Детализированный rpg-дизайн для mybb форума гильдии в тематике Экзодара.
Стоимость: 2150р*
В стоимость входит настройка и корректировка дизайна.

Подробнее

Поддержать проект

Если у вас есть желание помочь нам сделать наш проект лучше:
Финансовая помощьРеклама на сайте
Стать модераторомОтзывы

Предложения

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » ForumD.ru - Дизайн для форумов и техническая поддержка » Скрипты и стили для форумов МуBB.ru » Всплывающее цитирование при выделении текста в посте


Всплывающее цитирование при выделении текста в посте

Сообщений 1 страница 10 из 23

1

Всплывающая кнопка "Цитировать" при выделении текста в сообщении.
При выделении текста в сообщении появляется окошко "Цитировать" с активной ссылкой. Для того, чтобы убрать окошко, надо всего лишь кликнуть где-нибудь неподалёку.
http://clip2net.com/clip/m123035/thumb640/1333720148-clip-2kb.png

Автор: kozhilya
Платформа: MyBB

За идею спасибо Mango
За помощь спасибо Deff

<!-- Всплывающее окно цитирования -->
<style>
#Bubble {
  display: none;
  width: 100px;
  height: auto;
  padding: 5px;

  text-align: center;
  z-index: 10;
  border: 1px black solid;
  background: white;
  background-image: url(http://www.iconsearch.ru/uploads/icons/crystalclear/16x16/comment.png);
  background-repeat: no-repeat;
  background-position: 10px 4px;
  padding-left: 12px;

}
</style>
<div id="Bubble"><span><a href="javascript:quote('', 0)">Цитировать</a></span></div>
<script>
var fresh = false;
$('.post').mouseup(function(pos) {
  var idString = $(this).find('.post-content').attr("id");
  var id = idString.substring(1, idString.indexOf('-'));
  var aut = $(this).find('li.pa-author a').text();
  var theSelection = '';
  if (window.getSelection && !$.browser.opera) { theSelection = window.getSelection().toString(); }
  else if (document.getSelection) { theSelection = document.getSelection(); }
  else if (document.selection) { theSelection = document.selection.createRange().text; }
  if (!(theSelection == '' || typeof theSelection == 'undefined' || theSelection == null) && !(fresh))
  {
    $("#Bubble").css({ 'position': 'absolute', 'left': pos.pageX+'px', 'top': pos.pageY+'px', 'display': 'none' });
    $("#Bubble span").html($(this).find("li.pl-quote").html());
    $("#Bubble").fadeIn(200);
    fresh = true;
  }
  else if (fresh)
  { fresh = false; }
});
$('.post').click(function() {
  if (!(fresh)) { $("#Bubble:visible").hide(200); }
});
$('#Bubble span').click(function() {
  $('#Bubble').hide(200);
  fresh = false;
});
</script>

Красное - цвет окошка.
Зелёным - ссылка на картинку.
Синим - если у вас размер картинки отличен от 16х16, то крутите эти параметры для корректного отображения.


Сокращённый вариант

Код:
<!--Всплывающее окно цитирования--><div id="Bubble" style="display:none;position:absolute;z-index:100000"><span></span></div><script>function PopUpPL_Quote(){var fresh=false,SSsq='<img src="http://uploads.ru/i/n/L/f/nLfG0.png">';$("#Bubble").prependTo("body");$('.post').mouseup(function(pos){var theSelection='';if(window.getSelection&&!$.browser.opera){theSelection=window.getSelection().toString()}else if(document.getSelection){theSelection=document.getSelection()}else if(document.selection){theSelection=document.selection.createRange().text}if(!(theSelection==''||typeof theSelection=='undefined'||theSelection==null)&&!(fresh)){$("#Bubble").css({'left': (pos.pageX+5)+'px', 'top':(pos.pageY+4)+'px', 'display': 'none' });$("#Bubble span").html('<a href="'+$(this).find("li.pl-quote a:first").attr("href")+'">'+SSsq+'</a>');$("#Bubble").fadeIn(200);fresh=true}else if(fresh){fresh=false}});$('#Bubble span').click(function(){$('#Bubble').hide(200);fresh=false});$('.post').mousedown(function(){if(fresh){$("#Bubble:visible").hide(200);fresh=false}});}
if($("#pun-viewtopic").length){PopUpPL_Quote()}
</script>

Отредактировано Герда (19.05.2013 17:48:27)

+3

2

Сокращенный Вариант от ©kozhilya под всплывающее окно цитирования "чисто картинкой"

В HTML низ

Код:
<!--Всплывающее окно цитирования--><div id="Bubble" style="display:none;position:absolute;z-index:100000"><span></span></div><script>function PopUpPL_Quote(){var fresh=false,SSsq='<img src="http://uploads.ru/i/n/L/f/nLfG0.png">';$("#Bubble").prependTo("body");$('.post').mouseup(function(pos){var theSelection='';if(window.getSelection&&!$.browser.opera){theSelection=window.getSelection().toString()}else if(document.getSelection){theSelection=document.getSelection()}else if(document.selection){theSelection=document.selection.createRange().text}if(!(theSelection==''||typeof theSelection=='undefined'||theSelection==null)&&!(fresh)){$("#Bubble").css({'left': (pos.pageX+5)+'px', 'top':(pos.pageY+4)+'px', 'display': 'none' });$("#Bubble span").html('<a href="'+$(this).find("li.pl-quote a:first").attr("href")+'">'+SSsq+'</a>');$("#Bubble").fadeIn(200);fresh=true}else if(fresh){fresh=false}});$('#Bubble span').click(function(){$('#Bubble').hide(200);fresh=false});$('.post').mousedown(function(){if(fresh){$("#Bubble:visible").hide(200);fresh=false}});}
if($("#pun-viewtopic").length){PopUpPL_Quote()}
</script>


Ccылку на картинку (красное)

<img src="http://uploads.ru/i/n/L/f/nLfG0.png"

можно менять

Отредактировано Deff (20.04.2012 14:52:34)

0

3

Доброе утро.
У меня кнопка относительно выделенного текста расположена так:

http://uploads.ru/t/1/j/a/1jaru.jpg

а как сделать, чтобы было примерно так?

http://uploads.ru/t/B/A/l/BAlGx.jpg

код стоит такой:

Код:
<!--Всплывающее окно цитирования--><div id="Bubble"><span></span></div><script>var fresh=false,SSsq='<img src="http://i054.radikal.ru/1204/ea/d6549b89a3b7.jpg" style="margin-right:-10px">';$('.post').mouseup(function(pos){var theSelection='';if(window.getSelection&&!$.browser.opera){theSelection=window.getSelection().toString()}else if(document.getSelection){theSelection=document.getSelection()}else if(document.selection){theSelection=document.selection.createRange().text}if(!(theSelection==''||typeof theSelection=='undefined'||theSelection==null)&&!(fresh)){$("#Bubble").css({ 'position': 'absolute', 'left': pos.pageX+'px', 'top':(pos.pageY- $("#Bubble").height()-7)+'px', 'display': 'none' });$("#Bubble span").html($(this).find("li.pl-quote").html());$("#Bubble span a").html(SSsq);$("#Bubble").fadeIn(200);fresh=true}else if(fresh){fresh=false}});$('#Bubble span').click(function(){$('#Bubble').hide(200);fresh=false});$('.post').mousedown(function(){if(fresh){$("#Bubble:visible").hide(200);fresh=false}});</script>

0

4

Вернее от курсора далековато вправо.

0

5

Лаит написал(а):

Вернее от курсора далековато вправо.

Зависит от скорости выделения и куда дергаете курсор далее

Ващет вроде там картинка другая была

Код:
<!--Всплывающее окно цитирования--><div id="Bubble"><span></span></div><script>var fresh=false,SSsq='<img src="http://i054.radikal.ru/1204/ea/d6549b89a3b7.jpg" style="margin-right:-10px">';$('.post').mouseup(function(pos){var theSelection='';if(window.getSelection&&!$.browser.opera){theSelection=window.getSelection().toString()}else if(document.getSelection){theSelection=document.getSelection()}else if(document.selection){theSelection=document.selection.createRange().text}if(!(theSelection==''||typeof theSelection=='undefined'||theSelection==null)&&!(fresh)){$("#Bubble").css({ 'position': 'absolute', 'left': (pos.pageX-2)+'px', 'top':(pos.pageY+17)+'px', 'display': 'none' });$("#Bubble span").html($(this).find("li.pl-quote").html());$("#Bubble span a").html(SSsq);$("#Bubble").fadeIn(200);fresh=true}else if(fresh){fresh=false}});$('#Bubble span').click(function(){$('#Bubble').hide(200);fresh=false});$('.post').mousedown(function(){if(fresh){$("#Bubble:visible").hide(200);fresh=false}});</script>

0

6

Deff написал(а):

Зависит от скорости выделения и куда дергаете курсор далее

Да, я это понял, но у меня даже если вообще никуда от выделения курсор не отводить, кнопка появляется далеко справа, поэтому и озадачился.

Deff написал(а):

Ващет вроде там картинка другая была

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

Deff написал(а):

Выделить код

Так стало пониже, но по-прежнему далеко справа, даже если значение "(pos.pageX-2)" меняешь.

faiko написал(а):

Пример

Вот на тестовике в примере работает именно так, как хотелось бы и мне, а у меня почему-то срабатывает совершенно по-другому -_-

0

7

Лаит написал(а):

Вот на тестовике в примере работает именно так, как хотелось бы и мне, а у меня почему-то срабатывает совершенно по-другому -_-

Вы не даёте ссылок на действующий код на форуме, поскольку возможно у Вас доп скрипты, которые и меняют отступ
Попробуйте поставить скрипт в самое начало HTML низ

Какой у Вас браузер ?

У меня на форуме в профиле со всех браузеров идентично и примерно так=>
http://uploads.ru/t/B/7/E/B7Eey.png

(Можно увидеть, где остановился курсор

Отредактировано Deff (19.04.2012 11:54:01)

0

8

Deff написал(а):

Вы не даёте ссылок на действующий код на форуме

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

http://uploads.ru/t/X/8/u/X8uGQ.jpg

курсор находился в самом конце выделения на слове Yamato
у меня мозила и гугл хром, в обоих отображается одинаково
просил еще двух пользователей проверить, у них срабатывает так же, как у меня

Deff написал(а):

У меня на форуме в профиле со всех браузеров идентично и примерно так=>

Вот у Вас хорошо сработало, но почему ж так

0

9

Лаит
Создайте тестовый форум - проверьте там, если там норма
- занчит ошибки в стиле

Отредактировано Deff (19.04.2012 15:54:02)

0

10

Лаит
Найдите в HTML верх

<style>
#pun {
  width: 980px;
  position: relative;
background: transparent url(http://i055.radikal.ru/1112/84/48cd4fb01234.jpg) repeat-y; background-position: top center;
  }
</style>

Удалите Красным

+1

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

Напишите ваше сообщение и нажмите «Отправить»


ВНИМАНИЕ! При обращении за техподдержкой и вопросами по скриптам/оформлению, оставляйте ссылку на форум/сайт с проблемой! Специалист должен вживую видеть проблему, чтобы подсказать как ее решить.

ВНИМАНИЕ! Гости (не зарегистрированные на форуме) могут писать сообщения, но не могут вставлять прямые ссылки! Чтобы оставить сообщение со ссылкой на сайт, форум или скриншот удалите символы: "http://", "https://" или "www."


Вы здесь » ForumD.ru - Дизайн для форумов и техническая поддержка » Скрипты и стили для форумов МуBB.ru » Всплывающее цитирование при выделении текста в посте