Доброго времени суток. Работая в iframe с включенным designMode, можно заметить такую вещь: если в тексте есть картинка \ таблица и нажать, к примеру, "выделить всё", картинка \ таблица выделится как текст. А если же ткнуть на картинку \ таблицу - появляется возможность её ресайзить и т.д. В первом случае выделенную часть можно получить obj.selection.createRange() или obj.defaultView.getSelection() А как получить выделенную картинку, если на неё просто тыкнули в designMode ? Чтобы дальше уже оперировать её свойствами? Весь мозг сломал уже, а ответ, наверняка, на поверхности... upd: вопрос сужается до рамок IE. obj.selection.createRange() взять получается, но что дальше с ним делать - хз. Ни свойств, ни методов я у него не нашёл (помимо .length = 1). Как в IE получить картинку активную? Выделенную не как текст.
Как всегда, ответ оказался довольно прост. Если кто-то будет гуглить: Под IE Code: var object_node = (obj.range.length > 0) ? this.range.item(0) : obj.range.parentElement(); В итоге в object_node имеем ссылку на объект, на который кликнули Для нормальных браузеров: Code: var object_node = obj.range.getRangeAt(0).startContainer; var pos = obj.range.getRangeAt(0).startOffset; if(object_node.nodeType != 3) { object_node = node.childNodes[pos]; }