Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 06.03.2011, 21:31
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,584

Как-то так. Только вложенность тегов не поддерживается. Если надо морочтесь с рекурсией самостоятельно.)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript">
window.onload=function()
{
	var doc=document.getElementById('test');
    var text=doc.innerText?'innerText':'textContent';
    var cn=doc.childNodes, i=cn.length; //берем все ноды
    var strings=[];
    while(i--){ 
      strings.unshift(cn[i][text]);
      cn[i][text]='';
      } //проходим собирая всеь текст в вспогательный массив strings, то на странице остаются лишь теги(можно добавить проверку на тип ноды и не текстовым добавлять displasy:none)
    var ch=0,node=0;
    function echo()
     {
         if(strings[node].length<=++ch){
           ch=0;
           if(!strings[++node]){ //в случае если нод больше нет - омтанавливаемся
             clearInterval(interval)
             return false;
             }
          }
         cn[node][text]+=strings[node].charAt(ch);
     }    
     var interval = setInterval(echo,50);
  
}

</script>
</head>
<body>
<div id="test">«На наш взгляд, <a href=''>иностранные военные</a> присутствия в Афг<b>анистане могут</b> и должны предпринять более активные усилия в борьбе с наркопроизводством в этой стране, раз уж <i>они практически</i> взяли на себя ответственность за вопросы безопасности в Афганистане», - сказано в сообщении.</div>
</body>
</html>
Ответить с цитированием
  #12 (permalink)  
Старый 06.03.2011, 22:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

печатная машинка и сохранение тегов
Вариант ... составляем масив текстовых нод, обнуляем их содержимое и востанавливаем по таймеру ... сохраняется любая вложенность тегов так как структура HTML остаёться неизменной
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
</head>
<body>
<div id="test">«На наш взгляд, <a href=''>иностранные военные</a> присутствия в Афг<b>анис<i>тане</i> могут</b> и должны предпринять более активные усилия в борьбе с наркопроизводством в этой стране, раз уж <i>они практически</i> взяли на себя ответственность за вопросы безопасности в Афганистане», - сказано в сообщении.</div>
<script language="JavaScript" type="text/javascript">
var textNodes = [];
var textNodes_data = [];
var i=0;
function search_textNodes(b) {
    b = b.childNodes;
    for (var c = 0, d = b.length; c < d; c++) {
        var a = b[c];
        if (a.nodeType == 3) {
            textNodes.push(a);
            textNodes_data.push(a.data);
            a.data = ""
        } else a.hasChildNodes() && search_textNodes(a)
    }
};
var d = document.getElementById('test');
search_textNodes(d);
function str_write() {
    var a = textNodes_data[i];
    if (a) {
        textNodes[i].data += a.charAt(0);
        textNodes_data[i] = a.substr(1)
    } else i++;
    i < textNodes.length && setTimeout(arguments.callee, 100)
};
str_write()
</script>
</body>
</html>

Последний раз редактировалось рони, 18.04.2017 в 18:22.
Ответить с цитированием
  #13 (permalink)  
Старый 06.03.2011, 23:00
Интересующийся
Отправить личное сообщение для Detex Посмотреть профиль Найти все сообщения от Detex
 
Регистрация: 01.03.2011
Сообщений: 14

рони, Aetae спасибо за помощь, это то, что нужно. Буду разбираться как это работает.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
странное поведение innerhtml alexsum Общие вопросы Javascript 6 24.09.2010 16:17
Cтранное поведение viktod Общие вопросы Javascript 23 10.04.2010 00:37
innerHTML and z-index ViZ0R Общие вопросы Javascript 5 12.08.2009 10:28
Отменить поведение по умолчанию bool Общие вопросы Javascript 3 06.03.2009 16:59
ошибка с innerHTML Gekt0r Общие вопросы Javascript 15 21.08.2008 11:57