Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Скрипт брaл рaндомную стрoку из файлa, затем перeмешивaл внутpи cтрoки словa. (https://javascript.ru/forum/misc/72695-skript-bral-randomnuyu-stroku-iz-fajjla-zatem-peremeshival-vnutpi-ctroki-slova.html)

olya11 19.02.2018 17:23

Скрипт брaл рaндомную стрoку из файлa, затем перeмешивaл внутpи cтрoки словa.
 
Здравствуйте. Заказывала на фpилансе скрипт. Скрипт через неделю перестал работать, что могло с ним произойти(

Скрипт брaл рaндомную стрoку из файлa, затем перeмешивaл внутpи cтрoки словa мeжду сoбой и вывoдил нa стpанице сaйта.

class Randomizer {
    constructor(element) {
        this.el = document.querySelector(element);
    }

    rnd(min, max) {
        return Math.floor(min + Math.random() * (max + 1 - min));
    }

    randomLine(string) {
        let array = string.split("\n");
        let res = array[this.rnd(0, array.length-1)];
        console.log(res);
        this.random(res);
    }

    random(string) {
        let array = string.split(" ");
        let res = this.shuffle(array);
        this.el.innerHTML = res.join(" ");
    }

    shuffle(array) {
        for (let i = array.length - 1; i > 0; i--) {
            const j = Math.floor(Math.random() * (i + 1));
            [array[i], array[j]] = [array[j], array[i]];
        }
        return array;
    }

    parse(url) {
        let xhr = new XMLHttpRequest();
        xhr.onreadystatechange = () => {
            if (xhr.readyState === XMLHttpRequest.DONE) {
                this.randomLine(xhr.responseText);
            }
        };
        xhr.open('GET', url, true);
        xhr.send(null);
    }
}


<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<div class="rnd"></div>
<script src="js/randomizer.js"></script>
<script>new Randomizer(".rnd").parse("/txt/words.txt");</script>
</body>

Nexus 19.02.2018 17:24

Смотрите консоль (в Google Chrome: F12, вкладка "console"), причин может быть несколько.

j0hnik 19.02.2018 17:55

Путь к файлу не менялся?
Со скриптом врядли что-то могло случиться

Dilettante_Pro 19.02.2018 18:43

Все в целом работает.
Так что что-то либо с путями( txt и js),либо с сервером.
Следуйте совету Nexus


Часовой пояс GMT +3, время: 22:40.