@Azami

Как правильно перенести скрипт из файла .html в .js файл?

<script>
Array.prototype.slice.call(document.querySelectorAll('#aside1 > div:nth-child(3), #aside2 > div:nth-child(2)')).forEach(function(a) {  // селекторы блоков, которые будут фиксироваться. Может быть как один блок, так два и более
var b = null, P = 0;
window.addEventListener('scroll', Ascroll, false);
document.body.addEventListener('scroll', Ascroll, false);
function Ascroll() {
  if (b == null) {
    var Sa = getComputedStyle(a, ''), s = '';
    for (var i = 0; i < Sa.length; i++) {
      if (Sa[i].indexOf('overflow') == 0 || Sa[i].indexOf('padding') == 0 || Sa[i].indexOf('border') == 0 || Sa[i].indexOf('outline') == 0 || Sa[i].indexOf('box-shadow') == 0 || Sa[i].indexOf('background') == 0) {
        s += Sa[i] + ': ' +Sa.getPropertyValue(Sa[i]) + '; '
      }
    }
    b = document.createElement('div');
    b.style.cssText = s + ' box-sizing: border-box; width: ' + a.offsetWidth + 'px;';
    a.insertBefore(b, a.firstChild);
    var l = a.childNodes.length;
    for (var i = 1; i < l; i++) {
      b.appendChild(a.childNodes[1]);
    }
    a.style.height = b.getBoundingClientRect().height + 'px';
    a.style.padding = '0';
    a.style.border = '0';
  }
  var Ra = a.getBoundingClientRect(),
      R = Math.round(Ra.top + b.getBoundingClientRect().height - document.querySelector('#article').getBoundingClientRect().bottom + 0);
  if ((Ra.top - P) <= 0) {
    if ((Ra.top - P) <= R) {
      b.className = 'stop';
      b.style.top = - R +'px';
      b.style.left = 0;
    } else {
      b.className = 'sticky';
      b.style.top = P + 'px';
      b.style.left = Ra.left + 'px';
    }
  } else {
    b.className = '';
    b.style.top = '';
    b.style.left = '';
  }
  window.addEventListener('resize', function() {
    a.children[0].style.width = getComputedStyle(a, '').width;
    b.style.left = (b.className == 'sticky' ? (a.getBoundingClientRect().left + 'px') : '0');
  }, false);
}
})
</script>
  • Вопрос задан
  • 1187 просмотров
Пригласить эксперта
Ответы на вопрос 4
Wolfnsex
@Wolfnsex
Если не хочешь быть первым - не вставай в очередь!
Как правильно перенести скрипт из файла .html в .js файл?

1. Вырезаете всё, что находится между тегами <script></script>
2. Вставляете это в файл с раширением .js
3. Подключаете этот файл в нужном месте на нужной странице, примерно таким образом:
<script src="/путь/до/созданного/файла.js"></script>
Ответ написан
leni_m
@leni_m
ЧупаКобрус
копируете содержимое тега script, не включая сам тег, в файл test.js
a сам тег скрипт очищаете и прописываете в нем путь до вашего test.js
как-то так:
<script src="/может_папка_какая/test.js"></script>
Ответ написан
@sHARek
Подключите в head или внизу перед </body>
Ответ написан
Комментировать
@diadiafiodor
какой-то человек с улицы
Чтобы всегда подключать js без батхёрта вам нужно потратить 15 минут вашего времени на создание базовых файлов, в которых нет ничего кроме того, что они подключены и работают, и каждый раз, когда что-то не подключается в проекте, обращаться к ним и делать также, внимательно проверяя каждую буковку. Поэтому для начала создайте новую папку с названием test например и положите туда всего 2 файла, как тут:
5ae471278e07c451432594.png
UDP и еще нужна функция обёртка, которая будет обрабатывать событие загрузки окна
window.onload = function loader(){
document.write('HI user!');//тут вместо document.write описать и  вызвать все ваши функции
}

простите, сразу не пришло в голову, что проблема в этом
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы