myoperam Может, уже начать использовать document.seleсtion?
ВНИМАНИЕ! ОСТЕРЕГАЙТЕСЬ МОШЕННИКОВ!
Помните, что все браузеры Opera АБСОЛЮТНО БЕСПЛАТНЫ.
Загружайте новые версии ТОЛЬКО С ОФИЦИАЛЬНОГО САЙТА или с ресурсов, которым ДОВЕРЯЕТЕ!


Предыдущее | Следующее | Архив форума | operaman.ru | Поиск
Может, уже начать использовать document.seleсtion? profiT  05/09/05 09:20 AM

А то неудобно бывает ссылки приделывать. Уже же можно, начиная с восьмой Оперы, окантовывать выделение bbCode-тэгами в javascript'е.

Или надо подождать пока пользователи 7-й версии сойдут на нет?

Re: Может, уже начать использовать document.seleсtion? Stinger  05/10/05 08:53 PM

Начинать использовать document.seleсtion надо. Кстати, какие еще полезные функции по управлению контентом может дать JS? Наверняка можно придумать по-настоящему полезные применения этой фиче.

В ответ на:
Уже же можно, начиная с восьмой Оперы, окантовывать выделение bbCode-тэгами в javascript'е.


Способ окантовки текста тэгами при помощи java-скрипта на порядок лучше, чем нынешнее расширение меню путем вставки в INI, т.к. не использует операций с буфером обмена.

В ответ на:
Или надо подождать пока пользователи 7-й версии сойдут на нет?


Зачем ждать? Надо пользоваться новыми возможностями новой Оперы на полную катушку. А седьмая Опера потихоньку будет уходить в прошлое.

Re: Может, уже начать использовать document.seleсtion? van_grieg  05/12/05 06:22 AM

В ответ на:
Начинать использовать document.seleсtion надо.


Для этого надо переделать код форума, насколько я понимаю, ubbthreads document.selection не использует. Лично я с этой фичей никогда не работал, и толком не знаю, как ей пользоваться, если честно. Вся проблема в отсутствии времени. Если заниматься сайтом и форумом, то есть более важные задачи, которые ждут своей очереди уже давно... Так что если кто-нибудь предложит, как это сделать, сделаем.

В ответ на:
Способ окантовки текста тэгами при помощи java-скрипта на порядок лучше, чем нынешнее расширение меню путем вставки в INI, т.к. не использует операций с буфером обмена.


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

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/14/05 03:52 PM

Дайте мне кнопочку на панельку!!! но без use existing page!

Re: Может, уже начать использовать document.seleсtion? van_grieg  05/14/05 10:22 PM

В ответ на:
Дайте мне кнопочку на панельку!!! но без use existing page!


Бери кнопочку на панельку, что бы это не значило.

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/15/05 10:14 AM

Приколист ))
Видимо я не точно выразился
Я хочу кнопочку quote selection&insertintotextarea - типа вот такой.
Я знаю, что был такой bookmarklet, но без [V] Reuse existing page, он есессно не работал. Я же не хочу реюзать имеющуюся страницу, так как это неудобно для других дел.

Re: Может, уже начать использовать document.seleсtion? Kildor  05/15/05 02:20 PM

В ответ на:
Приколист ))
Видимо я не точно выразился
Я хочу кнопочку 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;
}


Ария для ввода текста, тема и сабмит — посередине снизу. А кнопка для цитаты — в левом нижнем углу…

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/15/05 02:32 PM

Спасибо, ты не мог бы сделать это аттачем - оба js + css
а то форум добавляет переносы строки и я боюсь, что могу как то не так убрать их.
Заранее спасибо
P.S. Кстати а зачем ты у себя разделяешь скрипты от GM и обычные по папкам?

Re: Может, уже начать использовать document.seleсtion? Kildor  05/15/05 02:47 PM

В ответ на:
P.S. Кстати а зачем ты у себя разделяешь скрипты от GM и обычные по папкам?

ну, они немного разные, и опера по разному их обрабатывает… К примеру, скриптам GM недоступно windows.opera.*
и так далее… В официальном мануале было сказано про это, уже не помню точно что именно, но что-то было…

В ответ на:
Спасибо, ты не мог бы сделать это аттачем - оба js + css
а то форум добавляет переносы строки и я боюсь, что могу как то не так убрать их.

Лови.

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/15/05 02:56 PM

Сорри, а где ловить?

Re: Может, уже начать использовать document.seleсtion? Kildor  05/15/05 03:36 PM

брр… Я же прикреплял файл… ;-)

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/15/05 03:46 PM

Ага,.. вот теперь спасибо
А если я хочу для других форумов,
что нужно изменить в скрипте?
Вот эту строку?
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){
и дальше продолжение скрипта?

Re: Может, уже начать использовать document.seleсtion? Kildor  05/15/05 04:41 PM

В ответ на:
что нужно изменить в скрипте?
Вот эту строку?

не только… нужно найти текстарию, в которую будеи вставлять текст.
плюс, по разному может текст обрамляться…
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: надеюсь что хоть немного понятно, что я тут нагородил… ;-)

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/15/05 05:19 PM

Спасибо за объяснение, а нельзя ли попросить тебя сделать этот скрипт для меня применительно для нескольких форумов?

Re: Может, уже начать использовать document.seleсtion? Kildor  05/16/05 01:52 AM

Можно, если кинешь ссылки на форумы, на которых тебе это надо сделать будет…

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/16/05 06:08 AM

Ок.
my.opera.com/forums
forum.ixbt.com - хотя там плавающая панелька быстрого ответа и так есть.
forum.ru-board.com
forum.mozilla.ru
Кстати, а нельзя ли дополнить скрипт еще парочкой тэгов?
типа <b></b>, <i></i>?

Re: Может, уже начать использовать document.seleсtion? Kildor  05/16/05 06:17 AM

можно, всё можно… ;-)
Я посмотрю эти форумы, как будет время свободное — сделаю…

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/16/05 06:19 AM

Что ж.. с меня пиво ))
Заранее благодарен!

Re: Может, уже начать использовать document.seleсtion? alexx  05/16/05 01:39 PM

Объясните, плиз, как этой красотой пользоваться?
Прописал файл forum_myopera.js в "Мои файлы JavaScript" в настройках. Этого достаточно? Что должно произойти?

Re: Может, уже начать использовать document.seleсtion? Kildor  05/16/05 01:51 PM

должна появиться кнопка с надписью „quote“ в левом нижнем углу.
При нажатии на неё, выделенный текст вставится в арию быстрого ответа…

Правда она глючна — появляется всегда, а не только тогда, когда есть форма… надо будет это исправить мне…

Re: Может, уже начать использовать document.seleсtion? alexx  05/16/05 03:16 PM

У меня ничего не появляется...
JS автозаполнения от VVSITE работает нормально.

Re: Может, уже начать использовать document.seleсtion? Dennis_HAWKS  05/16/05 03:20 PM

а ты ксс прикрутил?

Re: Может, уже начать использовать document.seleсtion? alexx  05/16/05 03:41 PM

А этот JS работает только в паре с CSS?
Вчера вроде пробовал прикрутить, но не уверен, что всё сделал правильно. Прописал forum_myopera.css в "моя таблица стилей". Какой режим должен стоять "по умолчанию" и какие галочки?
Если не трудно, сделай скриншот окна "режимы отображения" (Presentation modes) и приаттачь сюда, попробую разобраться.

Re: Может, уже начать использовать document.seleсtion? Kildor  05/16/05 03:52 PM

css не обязателен, он нужен только для всплывания формы быстрого ответа.
по умолчанию — user mode и все галки на нём.
проверь js консоль. нет ли эрроров каких-нить…

Re: Может, уже начать использовать document.seleсtion? alexx  05/16/05 04:12 PM


Всё, разобрался. Оказалось конфликт с Proxomitron. Классно работает, спасибо. Но шрифт уж больно мелкий

Re: Может, уже начать использовать document.seleсtion? Kildor  05/17/05 01:52 AM

Исправь…
Я то вообще на шрифты внимания не обращаю, у меня в опере выставлен минимальный шрифт, и всё, этого достаточно…


operaman.ru - Home


Rambler's Top100