Профиль пользователя заблокирован сроком «навсегда» без указания причины
  • Почему не работает 'path' (Node.js)?

    @MidNightElf_1_10
    неуверенный в себе фронтендер который хочет в бэк
    Что касается обращения к`publichtml/main` то это не сработает поскольку вы не отслеживаете этот путь. Но если так надо, то просто сделайте так let pathname = path.join(__dirname + req.url) т.е. без вашего base
    const http = require('http');
    const path = require('path');
    
    const fs = require('fs');
    
    var base = '/publicHtml';
    
    http.createServer(function (req, res) {
        // let pathname = base + req.url + '.html';
        let pathname = path.join(__dirname + base + req.url); // используйте path.join()
    
        let fileExt = path.extname(pathname); // получаю тип файла из строки в pathname
    
        if (!fileExt) // если тип файла не обнаружен
            pathname += '.html'; // добавить его в конце строки (соответсвенно к файлу)
    
      // все что ниже не изменяется
      if (path.basename(pathname) == null) {
        res.writeHead(404);
        res.write('Страница не найдена 404\n');
        res.end();
      }
        else{
        let file = fs.createReadStream(pathname);
        res.setHeader('Content-type', 'text/html');
        res.statusCode = 200;
    
        file.on('open',function () {
          file.pipe(res);
        });
    
        file.on('error', function (err) {
          console.log(err);
        });
      }
        	// body...
    }).listen(3000);
    console.log('Server run on port 3000');
    Ответ написан
  • Какой есть аналог функции onlick на jquery или чистом JS?

    @MidNightElf_1_10
    неуверенный в себе фронтендер который хочет в бэк
    $('img').on('click', function(){
        $('.class1').css('display', 'none');
        $('.class2').css('display', 'block');
    })

    P.S. Имя класса не может начинаться с цифр
    Ответ написан
    Комментировать
  • Как вернуть предыдущее изображение при повторном клике?

    @MidNightElf_1_10 Автор вопроса
    неуверенный в себе фронтендер который хочет в бэк
    $('.frame').vegas({
      preloadImage: true,
      autoplay: false,
      cover: true,
      transition: 'fade',
      transitionDuration: 250,
      slides: [
        {src: 'https://images.unsplash.com/photo-1583771803077-e512cbd2059c?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=400&fit=max&ixid=eyJhcHBfaWQiOjE0NTg5fQ'},
        {src: 'https://images.unsplash.com/photo-1583858815652-56b390b3a3e6?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=400&fit=max&ixid=eyJhcHBfaWQiOjE0NTg5fQ'},
        {src: 'https://images.unsplash.com/photo-1584605376366-63f17a36e99e?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=400&fit=max&ixid=eyJhcHBfaWQiOjE0NTg5fQ'},
        {src: 'https://images.unsplash.com/photo-1585432840537-b8bd65bc6b6a?ixlib=rb-1.2.1&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=400&fit=max&ixid=eyJhcHBfaWQiOjE0NTg5fQ'}
      ]
    });
    
    $('.toggle-slide').on('click', function() {
      //console.log($('.frame').vegas('current'));
      var c = $('.frame').vegas('current');
      var i = $('.toggle-slide').index(this);
      var p = parseInt($('.frame').data("prev"));
      if (i == c && !isNaN(p)) {
        $('.frame').vegas('jump', p);
        $('.frame').data("prev", "");
      } else {
        $('.frame').vegas('jump', i);
        $('.frame').data("prev", c);
      }
    });

    body {
      background: #333333;
    }
    .frame {
      width: 500px;
      height: 500px;
      border: 1px red solid;
    }
    main {
      width: 100vw;
      height: 100vh;
    }

    <main>
      <button class="toggle-slide">1</button>
      <button class="toggle-slide">2</button>
      <button class="toggle-slide">3</button>
      <button class="toggle-slide">4</button>
      <div class="frame"></div>
    </main>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/vegas/2.4.4/vegas.min.css" rel="stylesheet"/>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/vegas/2.4.4/vegas.min.js"></script>
    Ответ написан
    Комментировать