profiT
|
User
|
|
|
Зарегистр: 13/11/2004
|
Сообщений: 224
|
Из: Караганда
|
|
Может, уже начать использовать document.seleсtion?
09/05/2005 09:20
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
А то неудобно бывает ссылки приделывать. Уже же можно, начиная с восьмой Оперы, окантовывать выделение bbCode-тэгами в javascript'е.
Или надо подождать пока пользователи 7-й версии сойдут на нет?
|
Stinger
|
Operaman
|
|
|
Зарегистр: 26/03/2004
|
Сообщений: 550
|
|
|
Re: Может, уже начать использовать document.seleсtion?
10/05/2005 20:53
[Re: profiT]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Начинать использовать document.seleсtion надо. Кстати, какие еще полезные функции по управлению контентом может дать JS? Наверняка можно придумать по-настоящему полезные применения этой фиче.
В ответ на: Уже же можно, начиная с восьмой Оперы, окантовывать выделение bbCode-тэгами в javascript'е.
Способ окантовки текста тэгами при помощи java-скрипта на порядок лучше, чем нынешнее расширение меню путем вставки в INI, т.к. не использует операций с буфером обмена.
В ответ на: Или надо подождать пока пользователи 7-й версии сойдут на нет?
Зачем ждать? Надо пользоваться новыми возможностями новой Оперы на полную катушку. А седьмая Опера потихоньку будет уходить в прошлое.
|
van_grieg
|
Admin
|
|
|
Зарегистр: 19/11/2002
|
Сообщений: 1210
|
Из: Не будем о грустном
|
|
Re: Может, уже начать использовать document.seleсtion?
12/05/2005 06:22
[Re: Stinger]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
В ответ на: Начинать использовать document.seleсtion надо.
Для этого надо переделать код форума, насколько я понимаю, ubbthreads document.selection не использует. Лично я с этой фичей никогда не работал, и толком не знаю, как ей пользоваться, если честно. Вся проблема в отсутствии времени. Если заниматься сайтом и форумом, то есть более важные задачи, которые ждут своей очереди уже давно... Так что если кто-нибудь предложит, как это сделать, сделаем.
В ответ на: Способ окантовки текста тэгами при помощи java-скрипта на порядок лучше, чем нынешнее расширение меню путем вставки в INI, т.к. не использует операций с буфером обмена.
Зато работает везде, я уже и забыл, когда форумными кнопками пользовался где-либо.
|
Dennis_HAWKS
|
User
|
|
|
Зарегистр: 11/09/2003
|
Сообщений: 238
|
Из: Молдова, Тирасполь
|
|
Re: Может, уже начать использовать document.seleсtion?
14/05/2005 15:52
[Re: van_grieg]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Дайте мне кнопочку на панельку!!! но без use existing page!
|
van_grieg
|
Admin
|
|
|
Зарегистр: 19/11/2002
|
Сообщений: 1210
|
Из: Не будем о грустном
|
|
Re: Может, уже начать использовать document.seleсtion?
14/05/2005 22:22
[Re: Dennis_HAWKS]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
В ответ на: Дайте мне кнопочку на панельку!!! но без use existing page!
Бери кнопочку на панельку, что бы это не значило.
|
Dennis_HAWKS
|
User
|
|
|
Зарегистр: 11/09/2003
|
Сообщений: 238
|
Из: Молдова, Тирасполь
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 10:14
[Re: van_grieg]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Приколист )) Видимо я не точно выразился Я хочу кнопочку quote selection&insertintotextarea - типа вот такой. Я знаю, что был такой bookmarklet, но без [V] Reuse existing page, он есессно не работал. Я же не хочу реюзать имеющуюся страницу, так как это неудобно для других дел.
|
Kildor
|
Operaman
|
|
|
Зарегистр: 10/03/2004
|
Сообщений: 557
|
Из: Россия, Новосибирск
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 14:20
[Re: Dennis_HAWKS]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
В ответ на: Приколист )) Видимо я не точно выразился Я хочу кнопочку quote selection&insertintotextarea - типа вот такой. Я знаю, что был такой bookmarklet, но без [V] Reuse existing page, он есессно не работал. Я же не хочу реюзать имеющуюся страницу, так как это неудобно для других дел.
Деннис, User JS тебе поможет. А если точнее, то вот этот вот скрипт. Code:
document.addEventListener("load",chan,false) // changing handler`s events. function chan() { if(window.location.href.indexOf('forum.myopera.net')>-1){ if (document.getElementsByName('body')&&document.getElementsByTagName('form')) { form_ = document.getElementsByTagName('textarea'); q = d.createElement('input'); q.type = 'button'; q.value = 'quote'; q.className = ''; q.style='display:inline; position:fixed; left:0; bottom:0; z-index:99999'; q.addEventListener('click', function(){ try{ _ver = rrrr(selection); }catch(e){} }, false); q.addEventListener('mouseover', function(){ try{ _ver = get_selection(); }catch(e){} }, false); fmo = document.getElementsByTagName('form')[0]; fmo.insertBefore(q, fmo.firstChild); document.getElementsByTagName('form')[0].Subject.className = 'fixed'; document.getElementsByTagName('form')[0].textcont.className = 'fixed1'; document.getElementsByTagName('form')[0].Body.className = 'fixed2'; form_[0].onclick = UJS_true; form_[0].onkeyup= UJS_true; } }} function rrrr(text) { if (text!="") { document.getElementsByTagName('form')[0].Body.focus(); document.getElementsByTagName('form')[0].Body.document.selection.createRange().text = '[q]'+text+'[/q]'; }} function get_selection() { selection = document.selection.createRange().text; while (selection.indexOf(" ") !=-1) {selection = selection.replace(/ /gi, "");} } function UJS_true () { return true; }
Работает вместе с idtoAll скриптом, заодно убирает кучи алертов во время написания ответов, а заодно, позволяет сделать форму плавающей. для плавания надо подключить user CSS Code:
.fixed, .fixed1, .fixed2 { position:fixed !important; bottom:0 !important; width:100% !important; margin:0 !important; font-size:.8em !important; z-index:50; } .fixed { bottom:15em !important; z-index:100; } .fixed2{ bottom:1.5em !important; }
Ария для ввода текста, тема и сабмит — посередине снизу. А кнопка для цитаты — в левом нижнем углу…
|
Dennis_HAWKS
|
User
|
|
|
Зарегистр: 11/09/2003
|
Сообщений: 238
|
Из: Молдова, Тирасполь
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 14:32
[Re: Kildor]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Спасибо, ты не мог бы сделать это аттачем - оба js + css а то форум добавляет переносы строки и я боюсь, что могу как то не так убрать их. Заранее спасибо P.S. Кстати а зачем ты у себя разделяешь скрипты от GM и обычные по папкам?
|
Kildor
|
Operaman
|
|
|
Зарегистр: 10/03/2004
|
Сообщений: 557
|
Из: Россия, Новосибирск
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 14:47
[Re: Dennis_HAWKS]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
В ответ на: P.S. Кстати а зачем ты у себя разделяешь скрипты от GM и обычные по папкам?
ну, они немного разные, и опера по разному их обрабатывает… К примеру, скриптам GM недоступно windows.opera.* и так далее… В официальном мануале было сказано про это, уже не помню точно что именно, но что-то было…
В ответ на: Спасибо, ты не мог бы сделать это аттачем - оба js + css а то форум добавляет переносы строки и я боюсь, что могу как то не так убрать их.
Лови.
|
Dennis_HAWKS
|
User
|
|
|
Зарегистр: 11/09/2003
|
Сообщений: 238
|
Из: Молдова, Тирасполь
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 14:56
[Re: Kildor]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Сорри, а где ловить?
|
Kildor
|
Operaman
|
|
|
Зарегистр: 10/03/2004
|
Сообщений: 557
|
Из: Россия, Новосибирск
|
|
|
брр… Я же прикреплял файл… ;-)
|
Dennis_HAWKS
|
User
|
|
|
Зарегистр: 11/09/2003
|
Сообщений: 238
|
Из: Молдова, Тирасполь
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 15:46
[Re: Kildor]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Ага,.. вот теперь спасибо
А если я хочу для других форумов,
что нужно изменить в скрипте?
Вот эту строку?
if(window.location.href.indexOf('forum.myopera.net')>-1){
А может их быть несколько, например:
if(window.location.href.indexOf('forum.ru-board.com')>-1){
if(window.location.href.indexOf('forum.mozilla.ru')>-1){
if(window.location.href.indexOf('my.opera.com\/forums')>-1){
и дальше продолжение скрипта?
Исправлено Dennis_HAWKS (15/05/2005 15:47)
|
Kildor
|
Operaman
|
|
|
Зарегистр: 10/03/2004
|
Сообщений: 557
|
Из: Россия, Новосибирск
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 16:41
[Re: Dennis_HAWKS]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
В ответ на: что нужно изменить в скрипте? Вот эту строку?
не только… нужно найти текстарию, в которую будеи вставлять текст. плюс, по разному может текст обрамляться… q, quote, может и просто i ---
В ответ на: function chan() {
if(window.location.href.indexOf('forum.myopera.net')>-1){
if (document.getElementsByName('body')&&document.getElementsByTagName('form')) {
вот этот вот кусок нужен в том числе для того, чтоб форма стала плавающая. соответственно.
В ответ на: form_ = document.getElementsByTagName('textarea');
вот этот кусок стоит делать через if, и чтоб в зависимости от сайта, по разному его определять.
Пожалуй можно через ифы определять текстарию, подключать к ней кнопку для цитирования, и его же отдавать в
В ответ на: function rrrr(text) { if (text!="") { document.getElementsByTagName('form')[0].Body.focus(); document.getElementsByTagName('form')[0].Body.document.selection.createRange().text = 'В ответ на: '+text+'
'; }}
document.getElementsByTagName('form')[0].Body.focus(); — вот вместо этого.
PS: надеюсь что хоть немного понятно, что я тут нагородил… ;-)
|
Dennis_HAWKS
|
User
|
|
|
Зарегистр: 11/09/2003
|
Сообщений: 238
|
Из: Молдова, Тирасполь
|
|
Re: Может, уже начать использовать document.seleсtion?
15/05/2005 17:19
[Re: Kildor]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Спасибо за объяснение, а нельзя ли попросить тебя сделать этот скрипт для меня применительно для нескольких форумов?
|
Kildor
|
Operaman
|
|
|
Зарегистр: 10/03/2004
|
Сообщений: 557
|
Из: Россия, Новосибирск
|
|
Re: Может, уже начать использовать document.seleсtion?
16/05/2005 01:52
[Re: Dennis_HAWKS]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Можно, если кинешь ссылки на форумы, на которых тебе это надо сделать будет…
|