Показать сообщение отдельно
  #37 (permalink)  
Старый 25.08.2011, 08:03
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Цитата:
работать эта задачка будет только в FF (версия - хз, свежая).
Опера, хромиум, FF5+:
<div id=a>0</div>

<script>
a=document.getElementById('a');

/* тут пропущенный кусок моего кода */
(function(){
  var cached = a.innerHTML;
  a.__defineGetter__('innerHTML', function(){
    return cached;
  });
  a.__defineSetter__('innerHTML', function(b){
    cached = b.toUpperCase();
    var div = document.createElement('div');
    div.innerHTML = cached;
    for(var i = 0, length = a.childNodes.length; i < length; ++i){
      a.removeChild(a.childNodes[i]);
    }
    for(var i = 0, length = div.childNodes.length; i < length; ++i){
      a.appendChild(div.childNodes[i]);
    }
  });
})();

// всё хорошо. при клике к содержимому
// будет добавляться буква 'abc'
// всё статично
a.onclick = function(){ a.innerHTML += 'abc' };
</script>
Ответить с цитированием