Projektina siis wysiwyg-editori, ja ongelma koskee tällä hetkellä valitun elementin tunnistamista ja sen sijainnin (parentElement() käyttämällä) tulostaminen, esim.
lainaus:
<body> <table> <tbody> <tr> <td>
Koodi on tällä hetkellä seuraava:
function getSel() {
var selection = '';
if (window.getSelection) {
selection = document.getElementById('edit').contentWindow.getSelection();
}
else if (document.getSelection) {
selection = document.getElementById('edit').contentWindow.document.getSelection();
}
else if (document.selection) {
selection = document.getElementById('edit').contentWindow.document.selection.createRange();
}
else {
return false;
}
return selection;
}
var naytetaankoTaso = true;
function naytaTaso() {
if (format == "html") {
var tr = getSel();
if (naytetaankoTaso) {
var taso = new Array();
while (tr && tr.parentElement && tr.nodeName != '') {
if (tr.parentElement == "[object]") { // 1)
tr = tr.parentElement;
}
else {
tr = tr.parentElement();
}
taso.push(tr.nodeName);
}
var tasotxt = '';
for (i = 0; i < taso.length; i++) {
tasotxt += '<' + taso[(taso.length-1)-i] + '> ';
}
document.getElementById('naytaTaso').innerHTML = '' + tasotxt + '';
}
else {
}
}
}IE:llä toistaiseksi näyttää polun
lainaus:
<html> <body>
, kun mitään elementtiä ei ole valittuna, vaan osoitin on sivulla. FF tai Opera taas tulostaa tyhjää tekstiä tr:n hauksi.
1) [object] tulostuu vain IE:llä, FF ja Opera tulostavat [object**element]. Olisko test() mitään testaamaan vain, jos tuo object löytyy?
All you need is http://www.fckeditor.net/
Now you just lost me.
En löydä lähdekoodeista apua aiheeseen...
Aihe on jo aika vanha, joten et voi enää vastata siihen.