1
일단 범위를 만들면 Firefox의 HTML 콘텐츠를 어떻게 표시합니까? range.toString()
은 나에게 텍스트 콘텐츠 만 제공합니다. 본질적으로, innerHTML과 같은 IE에서 마크 업을 반환합니다. 감사범위 또는 htmlfrag의 html 콘텐츠 표시
function innerHTML(oTarget, sContent, bAppend){
if (document.getElementById && !document.all) {//is this a non ie browser
var range = document.createRange();
range.setStart(oTarget, 0);
range.setEnd(oTarget, oTarget.childNodes.length);
if (sContent) {//if there is content, save it if not return the content
var htmlFrag = range.createContextualFragment(sContent);
if (bAppend != true) {//append or replace
range.deleteContents();
}
oTarget.appendChild(htmlFrag); //add the new html
} else {
sContent = range.toString();
}
} else {
if (sContent) {
if (bAppend == true) {
oTarget.innerHTML += sContent;
} else {
oTarget.innerHTML = sContent;
}
}
sContent = oTarget.innerHTML;
}
return sContent;
}
oTarget이 실제로 무엇이든 될 수있는 유연성이 필요합니다. innerHTML은 경우에 따라 비 IE에서 스낵으로 실행됩니다. 나는 누군가가 범위 HTML 디스플레이 질문에 대한 답을 알고 있기를 바라고있다. – Praesagus