Модераторы: Sardar, Aliance

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Быстрая цитата 
:(
    Опции темы
2man
Дата 3.8.2005, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Подскажите как сделать кнопку "быстрая цитата" на IPB 1.3. Я думаю, это где-то здесь меняется:
Код

<td class='pformleft'>
   <center>Для вставки цитаты, выделите нужный текст и <br><a href="javascript:Insert(selection)" onMouseDown="get_selection()"><b>НАЖМИТЕ СЮДА</b></a>



--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 5.8.2005, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Просто выбираем отселектированный текст через document.getSelection().toString() или document.selection.text для ИЕ. Полученный текст ставим куда угодно.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 7.8.2005, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



А по-понятнее можно как-нибудь объяснить?


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
2man
Дата 12.8.2005, 07:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Как я посмотрел делается у вас, я пытаюсь вставить $poster['name'] в скрипт, выглядит это дело так:
Код

<td class='pformleft'>
   <center>Для вставки цитаты, выделите нужный текст и <br><a href="javascript:Insert(selection, $poster['name'])" onMouseDown="get_selection()"><b>НАЖМИТЕ СЮДА</b></a>

но эффекта ноль smile
Добавлено @ 07:45
Выдает ошибку, а если меняю на:
Код

<a href="javascript:Insert(selection, 'name')" onMouseDown="get_selection()"

то просто выдает обычную цитату smile


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 12.8.2005, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Insert, get_selection это функции этого форума, а не какие-то встроенные вещи.

У нас get_selection() вызываеться по onmouseover и складывает в переменную selection отселектированный текст на странице. Затем если человек кликает на картинку, достаёться пост по id, достаёться его текст, сравниваеться с полученной селекцией. Если подстрока не найденна, то считаеться что участник кликнул на кнопку цитаты другого человека.
Это всё переписанные функции.

Что тебе нужно? Нежели сложно посмотреть http://forum.vingrad.ru/html/quote.js ?
Впрочем написанно кривовато, в новом дизайне я переписал чуть по другому smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 13.8.2005, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Ты не совсем меня понял. Дело не в quote.js , а в /skin/*/skin_topic.php, скрипт идет именно оттуда. Я просто хочу заменить скрипт, тот что у вас, к примеру, на смайликами:
Цитата
Для вставки имени(ника), кликните на нем.

Для того, чтобы вставить цитату с этой страницы, выделите её и нажмите здесь.

на скрипт, который идет из кнопки быстрая цитата.
Чтобы цитируемый текст выглядел не как:
Цитата
Впрочем написанно кривовато

а как:
Цитата(Sardar @ 12.8.2005, 15:39)
Впрочем написанно кривовато


оффтоп: у вас этот самый javascript под смайликами и не работает smile


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
2man
Дата 14.8.2005, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



А если после
Код

<a href="javascript:Insert(selection, 'name')" onMouseDown="get_selection()"

Отправить его на quote.js?
Код

<a href="javascript:Insert(selection, 'name')" onMouseDown="get_selection()<QUOTE.JS>"



--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
sergejzr
Дата 14.8.2005, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 10
Всего: 360



2man, тебе стоит наверное почитать про яваскрипт прежде чем генерировать решения smile)


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Sardar
Дата 14.8.2005, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 13.8.2005, 16:18)
Чтобы цитируемый текст выглядел не как:

Всё что нужно это сгенерить {quote=автор, дата, время}цитата{/quote}
Цитата(2man @ 13.8.2005, 16:18)
оффтоп: у вас этот самый javascript под смайликами и не работает
Где? Всё работает... подробней?
Цитата(2man @ 14.8.2005, 13:41)
Отправить его на quote.js?

Это явно не JS smile

Как сделанно здесь? Вставка цитаты делиться на две фазы: выборка селекции и собственно вставка. Выборка при наведении мышкой на кнопку, т.к. при клике селекция пропадёт.

Выборка селекции:
Код
//функция помещает селекцию со страницы в переменную InsertQuote.selection
InsertQuote.prepare=function() {
  if(document.getSelection) {
    if(typeof(window.getSelection)!="undefined") InsertQuote.selection=window.getSelection();
    else InsertQuote.selection=document.getSelection();
  } else InsertQuote.selection=document.selection.createRange().text;
}


Теперь нужно запретить цитирование от лица чужого участника, если ты вдруг нажал на чужую кнопку цитаты smile
Функции вставки передаёться ник пользоватля, время и дата, и id поста. Выборка поста по id удобней чем доступ методами DOM, к тому же не боишся смены дизайна.
Код

function InsertQuote(nick, datetime, postid) { //k,r,s
    if(InsertQuote.selection.toString().length>0) { //если селекция была
      var pst=document.getElementById(postid), sl="";
      var uct = (typeof(pst.innerText)!="undefined")? pst.innerText: (typeof(pst.textContent)!="undefined")? pst.textContent: "";
      if(n6||window.opera) {//небольшой патчь для оперы
        uct=extractRus(uct);
        sl=extractRus(InsertQuote.selection.toString());
      } else sl=InsertQuote.selection.toString();
      //проверим являеться ли отселектированный текст чатью поста участника
      if(uct.indexOf(sl)<0) {alert("Вы нажали на кнопку цитаты другого участника");return;}
      //вставим пост, у тебя другая функция
      ubbc_addAfter(((post.target.length>0)? "\n": "")+"[quote"+(nick?("="+nick+", "+datetime):"")+"]\n"+(InsertQuote.selection.toString())+"\n[/quote]\n");
    }
}

//патчь
function extractRus(txt){
  var h=[], v=0;
  function fltr(l){ return ((l>=1072&&l<=1103)||(l>=1040&&l<=1071)); }
  for(var i=0, e; i<txt.length; i++) {
    if(fltr(txt.charCodeAt(i))){
      for(e=i+1; e<txt.length&&fltr(txt.charCodeAt(e)); ++e);
      h.push(txt.substring(i,e));
      i=e;
    }
  }
 return h.join('');
}

Это оригинальные скрипты форума, чуть модифицированные мной.

Затем генериться кнопка:
Код
<img src="images/posttop4-off.gif" alt="Быстрая цитата" title="Скопировать выделение в поле ввода" onmouseover="InsertQuote.prepare();" onclick="InsertQuote('Sardar', '1.12.2004, 18:53', 'post308353')" />
<!-- где пост имеет идентификатор -->
<td class="post-row2r color1r" id="post308353">Содержимое поста...


Уверен что тебе не нужно залезать глубоко в исходники форума, просто дай ссылки на свой quote.js и вёрстку с кнопками, подкорректирую.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 16.8.2005, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Цитата(Sardar @ 14.8.2005, 14:14)
Где? Всё работает... подробней?

http://forum.vingrad.ru/index.php?showtopic=61173
Вот мой quote.js:
http://mega-forum.net.ru/html/quote.js
Что-то я немного запутался smile smile В каком файле верстка кнопок находится?


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 16.8.2005, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 16.8.2005, 11:35)
http://forum.vingrad.ru/index.php?showtopic=61173

Во блин, я и не знал что такая ссылка существует smile

Затея хорошая, но лучше ссылочку ту убрать, т.к. есть более удобная "Быстрая цитата". А по той ссылке никак определить участника и время нельзя, можно разобрать Range, выделить пост, но это будет зависить от дизайна(при смене сразу лажа) и так глючно работать, что ты сам откажешся smile

Твой quote.js это не изменённый форумский скрипт, правильно должен работать. Ник и время, как уже сказал выше ты не получишь. В чём ещё проблема?


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 16.8.2005, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Так что у меня никак не получится запихнуть быструю цитату? А если через добавление кнопки --Resize_Images_Alt_Text--?


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 16.8.2005, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



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


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 16.8.2005, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Вроде немного понял
Код

function InsertQuote(nick, datetime, postid) { //k,r,s
    if(InsertQuote.selection.toString().length>0) { //если селекция была
      var pst=document.getElementById(postid), sl="";
      var uct = (typeof(pst.innerText)!="undefined")? pst.innerText: (typeof(pst.textContent)!="undefined")? pst.textContent: "";
      if(n6||window.opera) {//небольшой патчь для оперы
        uct=extractRus(uct);
        sl=extractRus(InsertQuote.selection.toString());
      } else sl=InsertQuote.selection.toString();
      //проверим являеться ли отселектированный текст чатью поста участника
      if(uct.indexOf(sl)<0) {alert("Вы нажали на кнопку цитаты другого участника");return;}
      //вставим пост, у тебя другая функция
      ubbc_addAfter(((post.target.length>0)? "\n": "")+"[quote"+(nick?("="+nick+", "+datetime):"")+"]\n"+(InsertQuote.selection.toString())+"\n[/quote]\n");
    }
}

//патчь
function extractRus(txt){
  var h=[], v=0;
  function fltr(l){ return ((l>=1072&&l<=1103)||(l>=1040&&l<=1071)); }
  for(var i=0, e; i<txt.length; i++) {
    if(fltr(txt.charCodeAt(i))){
      for(e=i+1; e<txt.length&&fltr(txt.charCodeAt(e)); ++e);
      h.push(txt.substring(i,e));
      i=e;
    }
  }
 return h.join('');
}

это я пихаю в quote.js, потом
Код

//функция помещает селекцию со страницы в переменную InsertQuote.selection
InsertQuote.prepare=function() {
  if(document.getSelection) {
    if(typeof(window.getSelection)!="undefined") InsertQuote.selection=window.getSelection();
    else InsertQuote.selection=document.getSelection();
  } else InsertQuote.selection=document.selection.createRange().text;
}

ставлю вместо
Код

function get_selection() {
   if (document.getSelection){
    selection = document.getSelection();
    selection = selection.replace(/\r\n\r\n/gi, "_doublecaret_");
    selection = selection.replace(/\r\n/gi, " ");
       while (selection.indexOf("  ") !=-1) selection = selection.replace(/  /gi, ""); 
    selection = selection.replace(/_doublecaret_/gi, "\r\n\r\n");
  } else
      selection = document.selection.createRange().text;
}

далее вставляю кнопку:
Код

<img src="images/posttop4-off.gif" alt="Быстрая цитата" title="Скопировать выделение в поле ввода" onmouseover="InsertQuote.prepare();" onclick="InsertQuote('Sardar', '1.12.2004, 18:53', 'post308353')" />
<!-- где пост имеет идентификатор -->
<td class="post-row2r color1r" id="post308353">Содержимое поста...

только вместо images/posttop-4off.gif наверное надо images/p_quick_quote.gif
Правильно?


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 16.8.2005, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 16.8.2005, 12:34)
Вроде немного понял

Почти, тебе будет не хватать функции ubbc_addAfter, замени её на paste(текст, true) - правда работать будет только под ИЕ. Моя ubbc_addAfter основанна на этом коде:
http://forum.vingrad.ru/index.php?showtopic=35775

Цитата(2man @ 16.8.2005, 12:34)
только вместо images/posttop-4off.gif наверное надо images/p_quick_quote.gif

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


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 16.8.2005, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



А ты не мог бы сам добавить в мой quote.js то что надо и выложить сюда, а то я дамер в этих делах, еще чего накручу smile
http://mega-forum.net.ru/html/quote.js


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 16.8.2005, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Нет, нужно изменять не JS, а код форума. Наведи мышкой на кнопку быстрой цитаты, в строке статуса видишь вызов. Это нужно от сервера, а код для клиента я дал в первых постах.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 17.8.2005, 03:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Чего-то не получилось. Ошибку на странице выдает smile


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 17.8.2005, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 17.8.2005, 02:30)
Чего-то не получилось. Ошибку на странице выдает

Что ты конкрентно сделал, выкладывай код, я не телепат smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 20.8.2005, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Так вот, какой у меня получился quote.js:
Код
function ins(name){ // вставка ника в форме быстрого ответа
if (document.REPLIER) {
var input=document.REPLIER.Post;
input.value=input.value+"[b]"+name+"[/b]"+" \n";
}
}

function Insert(text){ 
if (text!="") paste("[quote]"+text+"[/quote]\n", 0);
}

function paste(text, o){ // тут я заменил flag на o исходя из вашего файла
if (document.REPLIER) {
if ((document.selection)&&(o)) {
    document.REPLIER.Post.focus();
    document.REPLIER.document.selection.createRange().text = text;
} else document.REPLIER.Post.value += text;
}
}

// function get_selection() {
//   if (document.getSelection){
//    selection = document.getSelection();
//    selection = selection.replace(/\r\n\r\n/gi, "_doublecaret_");
//    selection = selection.replace(/\r\n/gi, " ");
//     while (selection.indexOf("  ") !=-1) selection = selection.replace(/  /gi, ""); 
//    selection = selection.replace(/_doublecaret_/gi, "\r\n\r\n");
//  } else
//      selection = document.selection.createRange().text;
// }

//функция помещает селекцию со страницы в переменную InsertQuote.selection
InsertQuote.prepare=function() {
  if(document.getSelection) {
    if(typeof(window.getSelection)!="undefined") InsertQuote.selection=window.getSelection();
    else InsertQuote.selection=document.getSelection();
  } else InsertQuote.selection=document.selection.createRange().text;
}


function InsertQuote(nick, datetime, postid) { //k,r,s
    if(InsertQuote.selection.toString().length>0) { //если селекция была
      var pst=document.getElementById(postid), sl="";
      var uct = (typeof(pst.innerText)!="undefined")? pst.innerText: (typeof(pst.textContent)!="undefined")? pst.textContent: "";
      if(n6||window.opera) {//небольшой патчь для оперы
        uct=extractRus(uct);
        sl=extractRus(InsertQuote.selection.toString());
      } else sl=InsertQuote.selection.toString();
      //проверим являеться ли отселектированный текст чатью поста участника
      if(uct.indexOf(sl)<0) {alert("Вы нажали на кнопку цитаты другого участника");return;}
      //вставим пост, у тебя другая функция
      ubbc_addAfter(((post.target.length>0)? "\n": "")+"[quote"+(nick?("="+nick+", "+datetime):"")+"]\n"+(InsertQuote.selection.toString())+"\n[/quote]\n");
    }
}

//патчь
function extractRus(txt){
  var h=[], v=0;
  function fltr(l){ return ((l>=1072&&l<=1103)||(l>=1040&&l<=1071)); }
  for(var i=0, e; i<txt.length; i++) {
    if(fltr(txt.charCodeAt(i))){
      for(e=i+1; e<txt.length&&fltr(txt.charCodeAt(e)); ++e);
      h.push(txt.substring(i,e));
      i=e;
    }
  }
 return h.join('');
}

далее, чтобы не добавлять отдельную кнопку, я решил поменять значение кнопки "цитата"
Код

<!-- REPORT / DELETE / EDIT / QUOTE DIV -->
        
        <div align='right'>
        {$post['report_link']}{$post['delete_button']}{$post['edit_button']}<a href='{$ibforums->base_url}act=Post&amp;CODE=06&amp;f={$ibforums->input[f]}&amp;t={$ibforums->input[t]}&amp;p={$post['pid']}'><{P_QUOTE}></a>
      </div>
      </td>
    </tr>

      это был старый код, а вот теперь новый:
Код

<!-- REPORT / DELETE / EDIT / QUOTE DIV -->
        
        <div align='right'>
        {$post['report_link']}{$post['delete_button']}{$post['edit_button']}<a href="javascript:Insert(selection)" onMouseDown="get_selection()"><{P_QUOTE}></a>
      </div>
      
      </td>
    </tr>

В итоге кнопка "цитата" вообще пропала. Что делать? smile

Это сообщение отредактировал(а) 2man - 20.8.2005, 10:58


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 20.8.2005, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



2man я понял, ты совсем не разбираешся в JS, такую нелепость нагородить... smile
Переношу топик в раздел для начинающих, т.к. никакой пользы он не понесёт.


А теперь будем думать головой! smile
Нам нужно вставить цитату от каждого участника в форму ответа. При этом дефолтовое поведение с переходом на форму расширенного ответа не нужно.

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

Что имеем? На клиенте только селекцию, всё остальное доставать достаточно геморно и привязанно к дизайну, поэтому проще вставить инфу на сервере.

Медитируем - я серьёзно, до полного просветления smile

Как только снова обрёл способность думать + посмотрел мой код на предидущей странице - здадача становиться делом 2 минут. Убираем твой код с Insert, который ты бездумно копируешь и пытаешся над ним шаманить, вместо того что бы просто его в слух прочесть(английский ты то должен понимать smile ).

Проблема: в моём коде используеться другая функця для вставки текста. НО! у тебя есть оригинальная paste. Обе функции делают одно и тоже, на этой ноте напрягай мозги до просветления smile

Код
function paste(text, o){
if (document.REPLIER) {
if ((document.selection)&&(o)) {
    document.REPLIER.Post.focus();
    document.REPLIER.document.selection.createRange().text = text;
} else document.REPLIER.Post.value += text;
}
}

//функция помещает селекцию со страницы в переменную InsertQuote.selection
InsertQuote.prepare=function() {
  if(document.getSelection) {
    if(typeof(window.getSelection)!="undefined") InsertQuote.selection=window.getSelection();
    else InsertQuote.selection=document.getSelection();
  } else InsertQuote.selection=document.selection.createRange().text;
}
function InsertQuote(nick, datetime, postid) { //k,r,s
    if(InsertQuote.selection.toString().length>0) { //если селекция была
      var pst=document.getElementById(postid), sl="";
      var uct = (typeof(pst.innerText)!="undefined")? pst.innerText: (typeof(pst.textContent)!="undefined")? pst.textContent: "";
      if(n6||window.opera) {//небольшой патчь для оперы
        uct=extractRus(uct);
        sl=extractRus(InsertQuote.selection.toString());
      } else sl=InsertQuote.selection.toString();
      //проверим являеться ли отселектированный текст чатью поста участника
      if(uct.indexOf(sl)<0) {alert("Вы нажали на кнопку цитаты другого участника");return;}
      //вставим пост, у тебя другая функция
      look_at_paste(((post.target.length>0)? "\n": "")+"[quote"+(nick?("="+nick+", "+datetime):"")+"]\n"+(InsertQuote.selection.toString())+"\n[/quote]\n", true);
    }
}
//патчь
function extractRus(txt){
  var h=[], v=0;
  function fltr(l){ return ((l>=1072&&l<=1103)||(l>=1040&&l<=1071)); }
  for(var i=0, e; i<txt.length; i++) {
    if(fltr(txt.charCodeAt(i))){
      for(e=i+1; e<txt.length&&fltr(txt.charCodeAt(e)); ++e);
      h.push(txt.substring(i,e));
      i=e;
    }
  }
 return h.join('');
}

Не пытайся скопировать код на прямую, там ошибка smile Если ты в начале поста читал и думал, то сразу её найдёшь smile

И так у нас есть две функции, одна снимает селекцию, вторая вставляет её. Первую как я уже говорил лучше вызывать по наведению мышки на кнопку, тогда селекция не будет пропадать при клике.

Очень мощно медитируем в это точке! smile

Займёмся твоей кнопкой:
Код
<a onmouseover="InsertQuote.prepare();" href="javascript:InsertQuote('{$author_name}', '{$post['post_date']}', 'post{$post['pid']}');">{$post['quick_quote_icon']}</a>

Не тупо копируем код, т.к. он не будет работать с пол оборота, а думаем! smile
Очевидно нам не хватает двух деталей: переменной $author_name - ник автора и $post['quick_quote_icon'] - кнопка быстрой цитаты.

Я разжевал так, что дальше вопросов быть не должно. Если не сумеешь сам, извини, но нужно править руки... smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 22.8.2005, 02:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Наверное надо руки мне править, потому что не получилось.
Вот мой JS:
Код

function ins(name){
if (document.REPLIER) {
var input=document.REPLIER.Post;
input.value=input.value+"[b]"+name+"[/b]"+" \n";
}
}


function paste(text, o){ 
if (document.REPLIER) {
if ((document.selection)&&(o)) {
    document.REPLIER.Post.focus();
    document.REPLIER.document.selection.createRange().text = text;
} else document.REPLIER.Post.value += text;
}
}

InsertQuote.prepare=function() {
  if(document.getSelection) {
    if(typeof(window.getSelection)!="undefined") InsertQuote.selection=window.getSelection();
    else InsertQuote.selection=document.getSelection();
  } else InsertQuote.selection=document.selection.createRange().text;
}

function InsertQuote(nick, datetime, postid) { //k,r,s
    if(InsertQuote.selection.toString().length>0) { //если селекция была
      var pst=document.getElementById(postid), sl="";
      var uct = (typeof(pst.innerText)!="undefined")? pst.innerText: (typeof(pst.textContent)!="undefined")? pst.textContent: "";
      if(n6||window.opera) {//небольшой патчь для оперы
        uct=extractRus(uct);
        sl=extractRus(InsertQuote.selection.toString());
      } else sl=InsertQuote.selection.toString();
      //проверим являеться ли отселектированный текст чатью поста участника
      if(uct.indexOf(sl)<0) {alert("Вы нажали на кнопку цитаты другого участника");return;}
      //вставим пост, у тебя другая функция
      paste(text, o)(((post.target.length>0)? "\n": "")+"[quote"+(nick?("="+nick+", "+datetime):"")+"]\n"+(InsertQuote.selection.toString())+"\n[/quote]\n", true);
    }
}
//патчь
function extractRus(txt){
  var h=[], v=0;
  function fltr(l){ return ((l>=1072&&l<=1103)||(l>=1040&&l<=1071)); }
  for(var i=0, e; i<txt.length; i++) {
    if(fltr(txt.charCodeAt(i))){
      for(e=i+1; e<txt.length&&fltr(txt.charCodeAt(e)); ++e);
      h.push(txt.substring(i,e));
      i=e;
    }
  }
 return h.join('');
}

А вот я пробую вставить кнопку:
Код

<!-- REPORT / DELETE / EDIT / QUOTE DIV -->

        <div align='right'>
        {$post['report_link']}{$post['delete_button']}{$post['edit_button']}<a onmouseover="InsertQuote.prepare();" href="javascript:InsertQuote('{$author['name']}', '{$post['post_date']}', '{$post['pid']}');">{$post['p_quick_quote']}><img src="{$ibforums->vars['img_url']}/p_quick_quote.gif" alt="Быстрая цитата" width="111" heigth="20" /></a><a href='{$ibforums->base_url}act=Post&amp;CODE=06&amp;f={$ibforums->input[f]}&amp;t={$ibforums->input[t]}&amp;p={$post['pid']}'><{P_QUOTE}></a>
      </div>

И не получается. Ну что теперь не то? smile
Добавлено @ 02:39
И медитировал вроде нормально smile

Это сообщение отредактировал(а) 2man - 22.8.2005, 02:39


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
2man
Дата 22.8.2005, 04:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Для того, чтобы была кнопка надо еще функцию прописывать. Ладно, опустим. Пусть у меня цитата вызывается через
Код

<center>Для вставки цитаты, выделите нужный текст и <br><a href="javascript:Insert(selection)" onMouseDown="get_selection()"><b>НАЖМИТЕ СЮДА</b></a>

Я меняю этот код на:
Код

<center>Для вставки цитаты, выделите нужный текст и <br><a onmouseover="InsertQuote.prepare();" href="javascript:InsertQuote('{$author['name']}', '{$post['post_date']}', '{$post['pid']}');"><b>НАЖМИТЕ СЮДА</b></a>

И... ошибка на странице. Значит, дело в JS. Смотрю JS. paste я поменял, insert убрал. медитирую... Тщательно медитирую... Ничего не происходит smile


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 22.8.2005, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Ошибка при наводе мышкой на кнопку? Или при нажатии? Какая ошибка(скопируй что пишет браузер). Дай ссылку на уже отрисованную страницу.

На будущее, не заставляй меня это спрашивать, если есть ошибка то ты должен выложить лог браузера и привести отрывок сбойного кода smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 22.8.2005, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Сейчас проделал тоже самое, что и раньше на локалхосте. Кнопка появляется, но никакой функции не несет, т.е. принажатии на нее ничего не происходит
Я приаттачик скриншот моей кнопки, а при наводе мышкой на ник участника слева от кнопки js выглядит как:
javascript:InsertQuote('<a href=
Нашел вроде ошибку. заменил $author['name'] на $author_name чтобы посмотреть как цитата будет работать без ника и все стало нормально. при наводе мыши на кнопку быстрой цитаты js:
javascript:InsertQuote('','11.08.2005 - 07:33', '6');
Стало ясно, что ошибка как раз в $author['name']. Но вот еще проблема после того, как я нажал на кнопку быстрой цитаты ничего не произошло и ошибку на странице не выдало smile
Добавлено @ 16:09
Пример можешь посмотреть по этой ссылке: http://www.mega-forum.net.ru/index.php?showtopic=194


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
2man
Дата 22.8.2005, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Видишь, если я просто навожу мышь на кнопку цитаты, у меня повляется:

javascript:InsertQuote('','11.08.2005 - 07:33', '6');

А у вас так:

javascript:Insert(selection, '2man','11.08.2005 - 07:33', '6');



--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 22.8.2005, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 22.8.2005, 15:02)
s выглядит как:
javascript:InsertQuote('<a href=

Цитата(2man @ 22.8.2005, 15:02)
Нашел вроде ошибку. заменил $author['name'] на $author_name чтобы посмотреть как цитата будет работать без ника и все стало нормально. при наводе мыши на кнопку быстрой цитаты js:
javascript:InsertQuote('','11.08.2005 - 07:33', '6');

Цитата(2man @ 22.8.2005, 15:02)
Стало ясно, что ошибка как раз в $author['name']. Но вот еще проблема после того, как я нажал на кнопку быстрой цитаты ничего не произошло и ошибку на странице не выдало smile


Я не могу, если ещё раз запостишь без обращения к мозгу, отправлю тему в юмор smile
Когда ты предложил заменять ссылки на названия постов, я думал ты разбираешся в PHP и JS, следовательно можешь отличить текст от разметки и найти ошибку. Жаль я ошибался.

Повторяю, это форум программистов! Если ты просто человек, не знающий ни языка и не понимаешь что есть: строки в JS, вызов функций и ошибки синтаксиса, то я не могу тебе помочь smile

Если до сих пор не дошло о написанном выше(напряги мозги на словах "разметка", "строки", "ошибки синтаксиса"), то подумай с какого перепугу первым параметром функции InsertQuote должна быть лабуда типа '<a href=...' ? smile

Цитата(2man @ 22.8.2005, 15:02)
Нашел вроде ошибку. заменил $author['name'] на $author_name чтобы посмотреть как цитата будет работать без ника

Согласись что ты бездумно(на авось smile ) поставил $author_name, который естественно не существует.

Думаем в этой точке, сильно думаем! Если думаешь в верном направлении, то окажеться, что $author['name'] возвращает вёрстку! smile
Ещё раз очень хорошо думаем! Вероятно нам нужен ник автора без вёрстки!
Ещё раз очень-очень хорошо думаем!!! Вероятно он лежит под другим ключём в массиве $author!!! smile

Остальное предлагаю додумать самому. Если не знаешь как распечатаьт массив, не позорься в PHP, прочти мануал, это тебе поможет в будущем smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 23.8.2005, 08:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Цитата(Sardar @ 22.8.2005, 16:34)
Я не могу, если ещё раз запостишь без обращения к мозгу, отправлю тему в юмор

Я просто запостил ход своих действий. Я понимаю, что js вида javascript:InsertQuote('<a href= полный бред. Не до такой степени уж я ламер smile
Цитата(Sardar @ 22.8.2005, 16:34)
Вероятно он лежит под другим ключём в массиве $author

Не совсем так. Я поставил $post['name'] и у меня все работает. При наводе мыши на кнопку все определяет замечательно: и ник стоит, и дата, и номер поста. Теперь по щелчку на кнопке у меня должна вставляться цитата. Щелкаю - ничего не происходит. Значит, теперь дело в js smile
Добавлено @ 08:29
Код js я выложил чуть выше smile


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 23.8.2005, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 23.8.2005, 07:27)
Щелкаю - ничего не происходит. Значит, теперь дело в js

Нет в руках, я серьзьёзно smile Наводим мышой на кнопку, получаем ошибку, читаем ошибку, думаем. Оказываеться нет функции InsertQuote! Ещё раз очень хорошо думаем!

Подсказка, глянь на свой quote.js, чего там не хватает? smile

P.S. в следующий раз напечатай пост, но перед тем как отправить, прочти и подумай smile Почитай что говорит браузер, ведь не молчит же он. А вообще я начал понимать, почему на бытовых приборах часто пишут глупые рекомендации, например в мануале моей эл. бритвы стоит: не ополаскиватйте бритвув горячей воде - можете обжечься smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 23.8.2005, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Цитата(Sardar @ 23.8.2005, 17:40)
Оказываеться нет функции InsertQuote!

Разве? А как же это:
Код

function InsertQuote(nick, datetime, postid) { //k,r,s
    if(InsertQuote.selection.toString().length>0) { //если селекция была
      var pst=document.getElementById(postid), sl="";
      var uct = (typeof(pst.innerText)!="undefined")? pst.innerText: (typeof(pst.textContent)!="undefined")? pst.textContent: "";
      if(n6||window.opera) {//небольшой патчь для оперы
        uct=extractRus(uct);
        sl=extractRus(InsertQuote.selection.toString());
      } else sl=InsertQuote.selection.toString();
      //проверим являеться ли отселектированный текст чатью поста участника
      if(uct.indexOf(sl)<0) {alert("Вы нажали на кнопку цитаты другого участника");return;}
      //вставим пост, у тебя другая функция
      paste(((post.target.length>0)? "\n": "")+"[quote"+(nick?("="+nick+", "+datetime):"")+"]\n"+(InsertQuote.selection.toString())+"\n[/quote]\n", true);
    }
}

Браузер никакую ошибку не выдает, я просто щелкаю по кнопке, а цитата не вставляется/
Цитата(Sardar @ 23.8.2005, 17:40)
Подсказка, глянь на свой quote.js

Понятное дело. А где ж еще smile А поконкретней?


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 23.8.2005, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 23.8.2005, 19:11)
Разве? А как же это:

Это то что ты отсюда взял, а теперь глянь на: http://www.mega-forum.net.ru/html/quote.js
На будущее: прежде чем сказать - проверь smile



--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 24.8.2005, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Я проверял, вот мой http://www.mega-forum.net.ru/html/quote.js :
Код
function ins(name){
if (document.REPLIER) {
var input=document.REPLIER.Post;
input.value=input.value+"[b]"+name+"[/b]"+" \n";
}
}


function paste(text, o){
if (document.REPLIER) {
if ((document.selection)&&(o)) {
        document.REPLIER.Post.focus();
        document.REPLIER.document.selection.createRange().text = text;
} else document.REPLIER.Post.value += text;
}
}

InsertQuote.prepare=function() {
  if(document.getSelection) {
    if(typeof(window.getSelection)!="undefined") InsertQuote.selection=window.getSelection();
    else InsertQuote.selection=document.getSelection();
  } else InsertQuote.selection=document.selection.createRange().text;
}

function InsertQuote(nick, datetime, postid) { //k,r,s
    if(InsertQuote.selection.toString().length>0) { //если селекция была
      var pst=document.getElementById(postid), sl="";
      var uct = (typeof(pst.innerText)!="undefined")? pst.innerText: (typeof(pst.textContent)!="undefined")? pst.textContent: "";
      if(n6||window.opera) {//небольшой патчь для оперы
        uct=extractRus(uct);
        sl=extractRus(InsertQuote.selection.toString());
      } else sl=InsertQuote.selection.toString();
      //проверим являеться ли отселектированный текст чатью поста участника
      if(uct.indexOf(sl)<0) {alert("Вы нажали на кнопку цитаты другого участника");return;}
      //вставим пост, у тебя другая функция
      paste(((post.target.length>0)? "\n": "")+"[quote"+(nick?("="+nick+", "+datetime):"")+"]\n"+(InsertQuote.selection.toString())+"\n[/quote]\n", true);
    }
}
//патчь
function extractRus(txt){
  var h=[], v=0;
  function fltr(l){ return ((l>=1072&&l<=1103)||(l>=1040&&l<=1071)); }
  for(var i=0, e; i<txt.length; i++) {
    if(fltr(txt.charCodeAt(i))){
      for(e=i+1; e<txt.length&&fltr(txt.charCodeAt(e)); ++e);
      h.push(txt.substring(i,e));
      i=e;
    }
  }
 return h.join('');
}

Не знаю почему он тебе другое выдал, может из-за кеширования smile


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Sardar
Дата 24.8.2005, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(2man @ 24.8.2005, 08:18)
Не знаю почему он тебе другое выдал, может из-за кеширования

Нет, я несколько раз жал ctrl+F5, может ты только что код туда поставил, ведь теперь нет ошибки на странице smile

А теперь догадайся почему цитата всё таки не работает. Смотри не на код, он в порядке, смотри на свою страницу smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
2man
Дата 24.8.2005, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Хм.. а теперь у меня выдает ошибку на странице smile
Цитата(Sardar @ 24.8.2005, 12:59)
Смотри не на код, он в порядке, смотри на свою страницу

В коде php сто баллов все в порядке. Так что может еще быть??

Это сообщение отредактировал(а) 2man - 24.8.2005, 23:43


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
2man
Дата 25.8.2005, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2007
Регистрация: 6.5.2005
Где: Нижние Чигири

Репутация: нет
Всего: 71



Вопрос решен по аське. Огромный респект Sardar !


--------------------
Быстро поднятое - упавшим не считаеся
PM MAIL ICQ MSN   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0924 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.