highcharts-gantt+draggable-points实现任务分配甘蔗图拖动增加修改效果代码

代码语言:html

所属分类:图表

代码描述:highcharts-gantt+draggable-points实现任务分配甘蔗图拖动增加修改效果代码

代码标签: highcharts-gantt draggable-points 任务 分配 甘蔗图 拖动 增加

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE HTML>
<html>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">


    <style type="text/css">
        #container, #buttonGroup {
            max-width: 1200px;
            min-width: 320px;
            margin: 1em auto;
        }
        
        .hidden {
            display: none;
        }
        
        .main-container button {
            font-size: 12px;
            border-radius: 2px;
            border: 0;
            background-color: #ddd;
            padding: 13px 18px;
        }
        
        .main-container button[disabled] {
            color: silver;
        }
        
        .button-row button {
            display: inline-block;
            margin: 0;
        }
        
        .overlay {
            position: fixed;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            background: rgba(0, 0, 0, 0.3);
            transition: opacity 500ms;
        }
        
        .popup {
            margin: 70px auto;
            padding: 20px;
            background: #fff;
            border-radius: 5px;
            width: 300px;
            position: relative;
        }
        
        .popup input, .popup select {
            width: 100%;
            margin: 5px 0 15px;
        }
        
        .popup button {
            float: right;
            margin-left: 0.2em;
        }
        
        .popup .clear {
            height: 50px;
        }
        
        .popup input[type=text], .popup select {
            height: 2em;
            font-size: 16px;
        }
    </style>
</head>

<body>
    <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/highcharts-gantt.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/draggable-points.js"></script>

    <div class="main-container">
        <div id="container"></div>
        <div id="buttonGroup" class="button-row">
            <button id="btnShowDialog">
            <i class="fa fa-plus"></i>
            Add task
        </button>
            <button id="btnRemoveSelected" disabled="disabled">
            <i class="fa fa-remove"></i>
            Remove selected
        </button>
        </div>

        <div id="addTaskDialog" class="hidden overlay">
            <div class="popup">
                <h3>Add task</h3>

                <label>Task name <input id="inputName" type="text" /></label>

                <label>Department
                <select id="selectDepartment">
                    <option value="0">Tech</option>
                    <option value="1">Marketing</option>
                    <option value="2">Sales</option>
                </select>
            </label>

                <label>Dependency
                <select id="selectDependency">
                    <!-- Filled in by Javascript -->
                </select>
            </label>

                <label>
                Milestone
                <input id="chkMilestone" type="checkbox" />
            </label>

                <div class="button-row">
                    <button id="btnAddTask">Add</button>
                    <button id="btnCancelAddTask">Cancel</button>
                </div>
                <div class="clear"></div>
            </div>
        </div>
    </div>



    <script type="text/javascript">
        /*
            Simple demo showing some interactivity options of Highcharts Gantt. More
            custom behavior can be added using event handlers and API calls. See
            http://api.highcharts.com/gantt.
        */
        
        var today = new Date(),
            day = 1000 * 60 * 60 * 24,
            each = Highcharts.each,
            reduce = Highcharts.reduce,
            btnShowDialog = document.getElementById('btnShowDialog'),
            btnRemoveTask = document.getElementById('btnRemoveSelected'),
            btnAddTask = document.getElementById('btnAddTask'),
            btnCancelAddTask = document.getElementById('btnCancelAddTask'),
            addTaskDialog = document.getElementById('addTaskDialog'),
            inputName = document.getElementById('inputName'),
            selectDepartment = document.getElementById('selectDepartment'),
            selectDependency = document.getElementById('selectDependency'),
            chkMilestone = document.getElementById('chkMilestone'),
            isAddingTask = false;
        
        // Set to 00:00:00:000 today
        today.setUTCHours(0);
        today.setUTCMinutes(0);
        today.setUTCSeconds(0);
        today.setUTCMilliseconds(0);
        today = today.getTime();
        
        
        // Update disabled status of the remove button, depending on whether or not we
        // have any selected points.
        function updateRemoveButtonStatus() {
            var chart = this.series.chart;
            // Run in a timeout to allow the select to update
            setTimeout(function () {
                btnRemoveTask.disabled = !chart.getSelectedPoints().length ||
                    isAddingTask;
            }, 10);
        }
        
        
        // Create the chart
        var chart = Highcharts.ganttChart('container', {
        
            chart: {
                spacingLef.........完整代码请登录后点击上方下载按钮下载查看

网友评论0