Показать сообщение отдельно
  #5 (permalink)  
Старый 30.06.2015, 22:04
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

<!DOCTYPE html>
<html>
  <body>
    <div id="inset">Установлено, что смесь двух изотопов, дейтерия и трития, требует меньше энергии для реакции синтеза по сравнению с энергией, выделяемой во время реакции.</div>
  <script>
    
  String.prototype.capitalize = function () {
    return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase();
  }
  
  Math.mod = function(a, b) {
    return (b + (a % b)) % b;
  };
  
  (function() {
    var actions = ['toUpperCase', 'capitalize', 'toLowerCase'];
    var selection = window.getSelection();
    actions.currentIndex = -1;
    actions.key = { 38: 'prev', 40: 'next' };
    actions.next = function() {
      return actions[actions.currentIndex = Math.mod(++actions.currentIndex, actions.length)];
    };
    actions.prev = function() {
      return actions[actions.currentIndex = Math.mod(--actions.currentIndex, actions.length)];
    };
    document.addEventListener('selectstart', function(event) {
      actions.currentIndex = -1;
      // var selection = window.getSelection();
      return false;
    });
    document.addEventListener('keyup', function(event) {
      event.preventDefault();
      if(!selection) return;
      switch(event.keyCode) {
        case 38: case 40:
        var string = selection.toString();
        if (selection.rangeCount) {
          var range = selection.getRangeAt(0);
          range.deleteContents();
          range.insertNode(document.createTextNode(string[actions[actions.key[event.keyCode]]()]()));
          selection.addRange(range);
        }
      }
      return false;
    });
  })();
    </script>
  </body>
</html>

Последний раз редактировалось Malleys, 30.06.2015 в 22:32. Причина: Убрал 28 строку
Ответить с цитированием