151 lines
5.6 KiB
HTML
Generated
151 lines
5.6 KiB
HTML
Generated
<!DOCTYPE html>
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
|
|
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<script src="lib/simpleRequire.js"></script>
|
|
<script src="lib/config.js"></script>
|
|
<script src="lib/jquery.min.js"></script>
|
|
<script src="lib/facePrint.js"></script>
|
|
<script src="lib/testHelper.js"></script>
|
|
<link rel="stylesheet" href="lib/reset.css" />
|
|
</head>
|
|
<body>
|
|
<style>
|
|
.test-title {
|
|
background: #146402;
|
|
color: #fff;
|
|
}
|
|
</style>
|
|
|
|
|
|
<div id="main0"></div>
|
|
|
|
|
|
<script>
|
|
|
|
require([
|
|
'echarts'/*, 'map/js/china' */
|
|
], function (echarts) {
|
|
|
|
var data = [[10, 300], [10, 600]];
|
|
|
|
var option = {
|
|
xAxis: {},
|
|
yAxis: {},
|
|
tooltip: {
|
|
position: function (point, params, dom, rect, size) {
|
|
return [rect.x, rect.y];
|
|
},
|
|
extraCssText: 'width: 60px; height: 60px;'
|
|
},
|
|
series: [{
|
|
id: 'scatter',
|
|
type: 'scatter',
|
|
symbol: 'rect',
|
|
symbolSize: 50,
|
|
emphasis: {
|
|
itemStyle: {
|
|
color: 'green'
|
|
}
|
|
},
|
|
data: data
|
|
}]
|
|
};
|
|
|
|
var chart = testHelper.create(echarts, 'main0', {
|
|
title: [
|
|
'Tooltip should be event disalbed:',
|
|
'(1) When hovering on the symbol',
|
|
'tooltip is shown on the symbol;',
|
|
'the symbol should keep green, but not return to red.',
|
|
'(2) Enable moving the symbol without tooltip effection',
|
|
'(3) click "set tooltip enterable, button in tooltip should be clickable'
|
|
],
|
|
option: option,
|
|
button: {
|
|
text: 'set tooltip enterable',
|
|
onclick: function () {
|
|
chart.setOption({
|
|
tooltip: {
|
|
formatter: function () {
|
|
return [
|
|
'<button onclick="console.log(\'click\');">click me</button>'
|
|
].join('');
|
|
},
|
|
enterable: true
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
|
|
if (chart) {
|
|
var zr = chart.getZr();
|
|
var pointerOffset;
|
|
var draggingDataIndex;
|
|
|
|
chart.on('mousedown', function (params) {
|
|
if (params.seriesIndex === 0) {
|
|
var pointerData = chart.convertFromPixel(
|
|
'grid', [params.event.offsetX, params.event.offsetY]
|
|
);
|
|
draggingDataIndex = params.dataIndex;
|
|
pointerOffset = [
|
|
params.data[0] - pointerData[0],
|
|
params.data[1] - pointerData[1]
|
|
];
|
|
}
|
|
});
|
|
|
|
zr.on('mousemove', function (params) {
|
|
if (draggingDataIndex != null) {
|
|
var pointerData = chart.convertFromPixel(
|
|
'grid', [params.event.offsetX, params.event.offsetY]
|
|
);
|
|
data[draggingDataIndex] = [
|
|
pointerData[0] + pointerOffset[0],
|
|
pointerData[1] + pointerOffset[1]
|
|
];
|
|
chart.setOption({
|
|
series: {
|
|
id: 'scatter',
|
|
data: data
|
|
},
|
|
animationDurationUpdate: 0
|
|
});
|
|
}
|
|
});
|
|
|
|
zr.on('mouseup', function (params) {
|
|
draggingDataIndex = null;
|
|
chart.setOption({
|
|
animationDurationUpdate: 700
|
|
});
|
|
});
|
|
}
|
|
});
|
|
|
|
</script>
|
|
</body>
|
|
</html> |