Показать сообщение отдельно

  #29  
Старый 23.04.2007, 17:27
Helios
Постоянный
Регистрация: 14.01.2007
Сообщений: 459
С нами: 10169427

Репутация: 589
По умолчанию

Мой вариант:
PHP код:
<script>
function 
insertSmilie(code) {
    var 
myTextArea = document.getElementById('message');

    
//IE support
    
if (document.selection) {
        
myTextArea.focus();
        
sel = document.selection.createRange();
        
sel.text = code;
    }
    
//MOZILLA/NETSCAPE support
    
else if (myTextArea.selectionStart || myTextArea.selectionStart == "0") {
        var 
startPos = myTextArea.selectionStart;
        var 
endPos = myTextArea.selectionEnd;
        var 
oldText = myTextArea.value;

        
myTextArea.value = oldText.substring(0, startPos) + code + oldText.substring(endPos, oldText.length);
        
myTextArea.selectionStart = startPos;
        
myTextArea.selectionEnd = startPos + code.length;
    } else {
        
myTextArea.value += code;
    }

    
myTextArea.focus();
}
</
script>

<
textarea id="message" rows="7" cols="50">bla bla bla bla bla</textarea>

<
a href="#" onclick="insertSmilie(':one:');">One</a> 

2 Raz0r:

получение того, что выделено:
PHP код:
<script>
function 
getSelected()
{
    var 
myTextArea = document.getElementById('message');

    
//IE support
    
if (document.selection) {
        
myTextArea.focus();
        
sel = document.selection.createRange();
        return 
sel.text;
    }
    
//MOZILLA/NETSCAPE support
    
else if (myTextArea.selectionStart || myTextArea.selectionStart == "0") {
        var 
startPos = myTextArea.selectionStart;
        var 
endPos = myTextArea.selectionEnd;
        var 
oldText = myTextArea.value;

        return 
oldText.substring(startPos, endPos);
    } else {
        return 
'';
    }
}
</
script> 

Последний раз редактировалось Helios; 23.04.2007 в 17:30..
 
Ответить с цитированием