Как исправить внешний js jquery скрипт из html шаблона сайта в угловой проект - PullRequest
0 голосов
/ 06 февраля 2019

Я использую шаблон веб-сайта html для создания углового проекта, но у меня проблемы с пользовательским сценарием js.кнопка меню (для переключения навигации) и некоторые другие элементы в custom.js не работают

я попытался связать ссылку на файлы скриптов в index.html и сослался на нее в конфигурационном файле angular.json

вот ссылка на файл github https://github.com/donprecious/crtx

здесь есть index.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <!-- Meta, title, CSS, favicons, etc. -->
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <title>CREXT | DRD</title>
<!--
    <link href="../vendors/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
    <link href="../vendors/font-awesome/css/font-awesome.min.css" rel="stylesheet">
    <link href="../vendors/nprogress/nprogress.css" rel="stylesheet">
    <link href="../vendors/iCheck/skins/flat/green.css" rel="stylesheet">

    <link href="../vendors/bootstrap-progressbar/css/bootstrap-progressbar-3.3.4.min.css" rel="stylesheet">
    <link href="../vendors/jqvmap/dist/jqvmap.min.css" rel="stylesheet"/>
    <link href="../vendors/bootstrap-daterangepicker/daterangepicker.css" rel="stylesheet">

    <link href="../build/css/custom.min.css" rel="stylesheet">

  </head>

  <body class="nav-md">
    <div class="container body">
      <div class="main_container">
       <app-root></app-root>
    </div>

    <!-- jQuery -->
    <!-- <script src="assets/vendors/"></script> -->
    <script src="assets/vendors/jquery/dist/jquery.min.js"></script>
    <script src="assets/vendors/bootstrap/dist/js/bootstrap.min.js"></script>
    <script src="assets/vendors/fastclick/lib/fastclick.js"></script>
    <script src="assets/vendors/nprogress/nprogress.js"></script>
    <script src="assets/vendors/Chart.js/dist/Chart.min.js"></script>
    <script src="assets/vendors/echarts/dist/echarts.min.js"></script>
    <script src="assets/vendors/gauge.js/dist/gauge.min.js"></script>
    <script src="assets/vendors/bootstrap-progressbar/bootstrap-progressbar.min.js"></script>
    <script src="assets/vendors/iCheck/icheck.min.js"></script>
    <script src="assets/vendors/skycons/skycons.js"></script>
    <script src="assets/vendors/Flot/jquery.flot.js"></script>
    <script src="assets/vendors/Flot/jquery.flot.pie.js"></script>
    <script src="assets/vendors/Flot/jquery.flot.time.js"></script>
    <script src="assets/vendors/Flot/jquery.flot.stack.js"></script>
    <script src="assets/vendors/Flot/jquery.flot.resize.js"></script>
    <script src="assets/vendors/flot.orderbars/js/jquery.flot.orderBars.js"></script>
    <script src="assets/vendors/flot-spline/js/jquery.flot.spline.min.js"></script>
    <script src="assets/vendors/flot.curvedlines/curvedLines.js"></script>
    <script src="assets/vendors/DateJS/build/date.js"></script>
    <script src="assets/vendors/jqvmap/dist/jquery.vmap.js"></script>
    <script src="assets/vendors/jqvmap/dist/maps/jquery.vmap.world.js"></script>
    <script src="assets/vendors/jqvmap/examples/js/jquery.vmap.sampledata.js"></script>
    <script src="assets/vendors/moment/min/moment.min.js"></script>
    <script src="assets/vendors/bootstrap-daterangepicker/daterangepicker.js"></script>
  <script src="assets/js/custom.js"></script>
  <script src="assets/js/site.js"></script>
  </body>
</html>

Angular.json

  "scripts": [
              "src/assets/vendors/jquery/dist/jquery.min.js",
              "src/assets/vendors/bootstrap/dist/js/bootstrap.min.js",
              "src/assets/vendors/fastclick/lib/fastclick.js",
              "src/assets/vendors/nprogress/nprogress.js",
              "src/assets/vendors/Chart.js/dist/Chart.min.js",
              "src/assets/vendors/echarts/dist/echarts.min.js",
              "src/assets/vendors/gauge.js/dist/gauge.min.js",
              "src/assets/vendors/bootstrap-progressbar/bootstrap-progressbar.min.js",
              "src/assets/vendors/iCheck/icheck.min.js",
              "src/assets/vendors/skycons/skycons.js",
              "src/assets/vendors/Flot/jquery.flot.js",
              "src/assets/vendors/Flot/jquery.flot.pie.js",
              "src/assets/vendors/Flot/jquery.flot.time.js",
              "src/assets/vendors/Flot/jquery.flot.stack.js",
              "src/assets/vendors/Flot/jquery.flot.resize.js",
              "src/assets/vendors/flot.orderbars/js/jquery.flot.orderBars.js",
              "src/assets/vendors/flot-spline/js/jquery.flot.spline.min.js",
              "src/assets/vendors/flot.curvedlines/curvedLines.js",
              "src/assets/vendors/DateJS/build/date.js",
              "src/assets/vendors/jqvmap/dist/jquery.vmap.js",
              "src/assets/vendors/jqvmap/dist/maps/jquery.vmap.world.js",
              "src/assets/vendors/jqvmap/examples/js/jquery.vmap.sampledata.js",
              "src/assets/vendors/moment/min/moment.min.js",
              "src/assets/vendors/bootstrap-daterangepicker/daterangepicker.js",
              "src/assets/js/custom.js",
              "src/assets/js/site.js"

            ]
          },

custom.jsfile

var CURRENT_URL = window.location.href.split('#')[0].split('?')[0],
    $BODY = $('body'),
    $MENU_TOGGLE = $('#menu_toggle'),
    $SIDEBAR_MENU = $('#sidebar-menu'),
    $SIDEBAR_FOOTER = $('.sidebar-footer'),
    $LEFT_COL = $('.left_col'),
    $RIGHT_COL = $('.right_col'),
    $NAV_MENU = $('.nav_menu'),
    $FOOTER = $('footer');

этот код не работает, когда я интегрирую шаблон веб-сайта, но работает, когда я просто нажимаю запустить браузер шаблонов

$MENU_TOGGLE.on('click', function() {
        console.log('clicked - menu toggle');

        if ($BODY.hasClass('nav-md')) {
            $SIDEBAR_MENU.find('li.active ul').hide();
            $SIDEBAR_MENU.find('li.active').addClass('active-sm').removeClass('active');
        } else {
            $SIDEBAR_MENU.find('li.active-sm ul').show();
            $SIDEBAR_MENU.find('li.active-sm').addClass('active').removeClass('active-sm');
        }

    $BODY.toggleClass('nav-md nav-sm');

    setContentHeight();
});

кажется, что javascript визуализируется, нокогда я нажимаю на кнопку, чтобы переключить меню или любой другой элемент управления, что, как работать с JQuery, он не работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...