Спустя 2 часа, 39 минут, 41 секунда (28.02.2011 - 15:40) Ser18 написал(а):
Это работает для всего кроме ИЕ
Под ИЕ у меня такой
Но он не работает
Пока не могу понять почему
//$('#strong') - div кнопка
//$('#txt') - textarea
//if (txt[0].selectionStart || txt[0].selectionStart == '0') - чтоб в ИЕ не работало, а то ошибка будет
$('#strong').click(function(){
var txt = $('#txt');
if (txt[0].selectionStart || txt[0].selectionStart == '0'){
var text_len = txt.val().length;//Длинна текста
if(text_len > 0){//чтоб в пустоту не вставлять
var start = txt[0].selectionStart;//начало выделения
var end = txt[0].selectionEnd;//конец выделения
var selectedText = txt.val().substring(start, end);//вырезаем выделенный текст
var res = txt.val(txt.val().substring(0, start) + ''+selectedText+'' + txt.val().substring(end, text_len)).focus();//вставляем текст с bb кодом
}
}
});
Под ИЕ у меня такой
Но он не работает
Пока не могу понять почему
if (document.selection){
txt.focus();
var sel = document.selection.createRange();
if (sel.text().length > 0) {
sel.text = '' + sel.text() + '';
}
}
Спустя 1 час, 9 минут, 35 секунд (28.02.2011 - 16:50) nugle написал(а):
Ser18
про второй скрипт, а нельзя сделать так, по клику так же на стронг, происходит функция?
мне кажется, что вместо этого
попробуйте это
про второй скрипт, а нельзя сделать так, по клику так же на стронг, происходит функция?
мне кажется, что вместо этого
if (sel.text().length > 0) {
sel.text = '' + sel.text() + '';
}
попробуйте это
if (sel.value().length > 0) {
sel.text = '<b>' + sel.value() + '</b>';
}
Спустя 18 минут (28.02.2011 - 17:08) Ser18 написал(а):
Цитата (nugle @ 28.02.2011 - 13:50) |
Ser18 попробуйте это if (sel.value().length > 0) { |
Не работает
Кстати из сообщения удалились [ b ]
Эта строка выглядит тик:
var res = txt.val(txt.val().substring(0, start) + '[ b ]'+selectedText+'[ /b ]' + txt.val().substring(end, text_len)).focus();//вставляем текст с bb кодом
А эта так
sel.text = '[ b ]' + sel.text() + '[ /b ]';
Спустя 6 минут, 40 секунд (28.02.2011 - 17:15) nugle написал(а):
вот я вижу откуда берётся текст, но не понятно куда он вставляется!
если надо я могу выложить скрипт бб-кода!
если надо я могу выложить скрипт бб-кода!
Спустя 5 минут, 31 секунда (28.02.2011 - 17:20) Ser18 написал(а):
Вот так получается
sel.text() - ошибка
sel.val() - ошибка
sel.value - undefined
sel.text - пустота
Выложите пожалуйста
sel.text() - ошибка
sel.val() - ошибка
sel.value - undefined
sel.text - пустота
Выложите пожалуйста
Спустя 4 минуты, 19 секунд (28.02.2011 - 17:25) nugle написал(а):
function replaceSelectedText(obj,cbFunc)
{
obj.focus();
if (document.selection)
{
var s = document.selection.createRange();
if (s.text)
{
eval("s.text="+cbFunc+"(s.text);");
s.select();
return true;
}
}
else if (typeof(obj.selectionStart)=="number")
{
if (obj.selectionStart!=obj.selectionEnd)
{
var start = obj.selectionStart;
var end = obj.selectionEnd;
eval("var rs = "+cbFunc+"(obj.value.substr(start,end-start));");
obj.value = obj.value.substr(0,start)+rs+obj.value.substr(end);
obj.setSelectionRange(start+rs.length,start+rs.length);
}
return true;
}
return false;
}
Введите описание товара:<br />
<input type="button" onclick = "replaceSelectedText(document.form.description,'strong')" value="strong">
Спустя 9 минут, 48 секунд (28.02.2011 - 17:34) Ser18 написал(а):
У меня вот это уже 0 выдает
var sel = document.selection.createRange();
alert(sel.text.length);
Спустя 10 минут, 16 секунд (28.02.2011 - 17:45) nugle написал(а):
а вот это
var sel = document.selection.createRange();
alert(sel);
Спустя 3 минуты, 49 секунд (28.02.2011 - 17:48) Ser18 написал(а):
Цитата (nugle @ 28.02.2011 - 14:45) |
а вот этоvar sel = document.selection.createRange(); |
alert(sel) - [object TextRange]
alert(sel.text) - пустота
_____________
Курс валют