1 2 var log_panel = null;3 var log_count = 0;4 var log_count_max = 10;5 var sel = null;6 7 window.addEventListener('load', init, true);8 window.addEventListener('mouseup', window_selection, false);9 window.addEventListener('keyup', window_selection, false);10 window.addEventListener('keypress', window_selection, false);11 12 function window_selection(event) {13 //var sel = window.getSelection();14 var s = '';15 for(key in sel)16 s += key + ' = ' + sel[key] + '<br>';17 log(s);18 19 //if (sel.nextSibling != null) sel.nextSibling.style.border = 'solid';20 21 // Pruebas:22 //sel.selectAllChildren();23 }24 25 26 function init() {27 log_panel = document.getElementById('log');28 sel = window.getSelection();29 30 /*31 var p1 = document.getElementById('parte1');32 p1.contentEditable=true;33 p1.addEventListener('keydown', div_editable_keydown, true);34 */35 add_text(document.getElementById('document'));36 37 38 }39 40 var add_text = function(parent) {41 var dom = document.createElement('div');42 var comments = document.createElement('div'); comments.className = 'comments';43 var users1 = document.createElement('div'); users1.style.cssFloat = 'right'; users1.style.fontSize='10px';44 var users2 = document.createElement('div'); users2.innerHTML = 'Editando: fulanita'; users2.style.display = 'inline';45 var users3 = document.createElement('div'); users3.innerHTML = ' + '; users3.style.display = 'inline'; users3.style.color = 'blue';46 users3.addEventListener('click', function() {47 var comment = document.createElement('div');48 comment.className = 'comment';49 comment.innerHTML = 'Su comentario...';50 comment.contentEditable = true;51 comments.appendChild(comment);52 comment.focus();53 }, true);54 var editor = document.createElement('div'); editor.className = 'editor-text';55 dom.appendChild(comments);56 dom.appendChild(users1);57 dom.appendChild(editor);58 users1.appendChild(users2);59 users1.appendChild(users3);60 editor.innerHTML = '';61 editor.style.minHeight = '15px';62 63 editor.addEventListener('keydown', div_editable_keydown, true);64 editor.addEventListener('blur', div_editable_blur, true);65 if(parent.parentNode.nextSibling) {66 parent.parentNode.parentNode.insertBefore(dom, parent.parentNode.nextSibling);67 } else {68 parent.appendChild(parent.parentNode);69 }70 editor.contentEditable=true; 71 editor.focus();72 }73 74 var div_editable_keydown = function(event) {75 if (event.keyCode == 13) {76 event.stopPropagation();77 event.preventDefault();78 add_text(this);79 }80 }81 82 var div_editable_blur = function (event) {83 log('Event change: '+event.target.innerHTML);84 }85 86 87 function log(txt) {88 if (log_count <= 0) {log_count = log_count_max; log_panel.innerHTML = 0;}89 if (log_panel != null) {log_panel.innerHTML = txt+'<br>'+log_panel.innerHTML; log_count--}90 }
Este ShareCode tiene versiones:
- Ingenieria inversa: Selection... (30/06/2011)
- Ingenieria inversa: Selection ... (24/04/2013)
- Ingenieria inversa: Selection ... (24/04/2013)
- Ingenieria inversa: Selection ... (24/04/2013)
- Ingenieria inversa: Selection ... (24/04/2013)
Enlace
El enlace para compartir es: