| 
								
							 | 
							
								<!doctype html>
							 | 
						
						
						
							| 
								
							 | 
							
								<html>
							 | 
						
						
						
							| 
								
							 | 
							
								<head>
							 | 
						
						
						
							| 
								
							 | 
							
								  <title>Network | Cursor Change</title>
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								  <script type="text/javascript" src="../../../dist/vis.js"></script>
							 | 
						
						
						
							| 
								
							 | 
							
								  <link href="../../../dist/vis-network.min.css" rel="stylesheet" type="text/css" />
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								  <style type="text/css">
							 | 
						
						
						
							| 
								
							 | 
							
								    #mynetwork {
							 | 
						
						
						
							| 
								
							 | 
							
								      width: 600px;
							 | 
						
						
						
							| 
								
							 | 
							
								      height: 400px;
							 | 
						
						
						
							| 
								
							 | 
							
								      border: 1px solid lightgray;
							 | 
						
						
						
							| 
								
							 | 
							
								    }
							 | 
						
						
						
							| 
								
							 | 
							
								  </style>
							 | 
						
						
						
							| 
								
							 | 
							
								</head>
							 | 
						
						
						
							| 
								
							 | 
							
								<body>
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								<p>Here is a simple network with nodes and edges that demonstrates how to change the cursor on hover for nodes and edges.</p>
							 | 
						
						
						
							| 
								
							 | 
							
								<p>Use the dropdowns and button below to change the cursor type bound to an event.</p>
							 | 
						
						
						
							| 
								
							 | 
							
								<div>
							 | 
						
						
						
							| 
								
							 | 
							
								Event Type -
							 | 
						
						
						
							| 
								
							 | 
							
								<select id="eventType">
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="hoverNode">hoverNode</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="blurNode">blurNode</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="hoverEdge">hoverEdge</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="blurEdge">blurEdge</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="dragStart">dragStart</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="dragging">dragging</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="dragEnd">dragEnd</option>
							 | 
						
						
						
							| 
								
							 | 
							
								</select>
							 | 
						
						
						
							| 
								
							 | 
							
								 
							 | 
						
						
						
							| 
								
							 | 
							
								Cursor Type -
							 | 
						
						
						
							| 
								
							 | 
							
								<select id="cursorType">
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="auto">auto</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="default">default</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="context-menu">context-menu</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="help">help</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="pointer">pointer</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="progress">progress</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="wait">wait</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="cell">cell</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="crosshair">crosshair</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="text">text</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="vertical-text">vertical-text</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="alias">alias</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="copy">copy</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="move">move</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="no-drop">no-drop</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="not-allowed">not-allowed</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="all-scroll">all-scroll</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="col-resize">col-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="row-resize">row-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="n-resize">n-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="e-resize">e-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="w-resize">w-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="s-resize">s-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="ne-resize">ne-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="nw-resize">nw-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="se-resize">se-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="sw-resize">sw-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="ew-resize">ew-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="ns-resize">ns-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="nesw-resize">nesw-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="nwse-resize">nwse-resize</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="zoom-in">zoom-in</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="zoom-out">zoom-out</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="grab">grab</option>
							 | 
						
						
						
							| 
								
							 | 
							
									<option value="grabbing">grabbing</option>
							 | 
						
						
						
							| 
								
							 | 
							
								</select>
							 | 
						
						
						
							| 
								
							 | 
							
								 
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								<button onClick="changeEventCursor(document.getElementById('eventType').value,document.getElementById('cursorType').value);">Change Cursor for Event</button>
							 | 
						
						
						
							| 
								
							 | 
							
								</div>
							 | 
						
						
						
							| 
								
							 | 
							
								<div id="mynetwork"></div>
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								<script type="text/javascript">
							 | 
						
						
						
							| 
								
							 | 
							
								  // create an array with nodes
							 | 
						
						
						
							| 
								
							 | 
							
								  var nodes = new vis.DataSet([
							 | 
						
						
						
							| 
								
							 | 
							
								    {id: 1, label: 'Node 1'},
							 | 
						
						
						
							| 
								
							 | 
							
								    {id: 2, label: 'Node 2'},
							 | 
						
						
						
							| 
								
							 | 
							
								    {id: 3, label: 'Node 3'},
							 | 
						
						
						
							| 
								
							 | 
							
								    {id: 4, label: 'Node 4'},
							 | 
						
						
						
							| 
								
							 | 
							
								    {id: 5, label: 'Node 5'}
							 | 
						
						
						
							| 
								
							 | 
							
								  ]);
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								  // create an array with edges
							 | 
						
						
						
							| 
								
							 | 
							
								  var edges = new vis.DataSet([
							 | 
						
						
						
							| 
								
							 | 
							
								    {from: 1, to: 3},
							 | 
						
						
						
							| 
								
							 | 
							
								    {from: 1, to: 2},
							 | 
						
						
						
							| 
								
							 | 
							
								    {from: 2, to: 4},
							 | 
						
						
						
							| 
								
							 | 
							
								    {from: 2, to: 5}
							 | 
						
						
						
							| 
								
							 | 
							
								  ]);
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								  // create a network
							 | 
						
						
						
							| 
								
							 | 
							
								  var container = document.getElementById('mynetwork');
							 | 
						
						
						
							| 
								
							 | 
							
								  var data = {
							 | 
						
						
						
							| 
								
							 | 
							
								    nodes: nodes,
							 | 
						
						
						
							| 
								
							 | 
							
								    edges: edges
							 | 
						
						
						
							| 
								
							 | 
							
								  };
							 | 
						
						
						
							| 
								
							 | 
							
								  var options = {interaction:{hover:true}};
							 | 
						
						
						
							| 
								
							 | 
							
								  var network = new vis.Network(container, data, options);
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								  //Get the canvas HTML element
							 | 
						
						
						
							| 
								
							 | 
							
								  var networkCanvas = document.getElementById("mynetwork").getElementsByTagName("canvas")[0]
							 | 
						
						
						
							| 
								
							 | 
							
								  function changeCursor(newCursorStyle){
							 | 
						
						
						
							| 
								
							 | 
							
									networkCanvas.style.cursor = newCursorStyle;
							 | 
						
						
						
							| 
								
							 | 
							
								  }
							 | 
						
						
						
							| 
								
							 | 
							
								  function changeEventCursor(eventName,cursorType){ 
							 | 
						
						
						
							| 
								
							 | 
							
								    network.on(eventName, function() {
							 | 
						
						
						
							| 
								
							 | 
							
								      changeCursor(cursorType);
							 | 
						
						
						
							| 
								
							 | 
							
								    });
							 | 
						
						
						
							| 
								
							 | 
							
								  }
							 | 
						
						
						
							| 
								
							 | 
							
								  network.on('hoverNode', function () {
							 | 
						
						
						
							| 
								
							 | 
							
									changeCursor('grab');
							 | 
						
						
						
							| 
								
							 | 
							
								  });
							 | 
						
						
						
							| 
								
							 | 
							
								  network.on('blurNode', function () {
							 | 
						
						
						
							| 
								
							 | 
							
									changeCursor('default');
							 | 
						
						
						
							| 
								
							 | 
							
								  });
							 | 
						
						
						
							| 
								
							 | 
							
								  network.on('hoverEdge', function () {
							 | 
						
						
						
							| 
								
							 | 
							
									changeCursor('grab');
							 | 
						
						
						
							| 
								
							 | 
							
								  });
							 | 
						
						
						
							| 
								
							 | 
							
								  network.on('blurEdge', function () {
							 | 
						
						
						
							| 
								
							 | 
							
									changeCursor('default');
							 | 
						
						
						
							| 
								
							 | 
							
								  });
							 | 
						
						
						
							| 
								
							 | 
							
								  network.on('dragStart', function () {
							 | 
						
						
						
							| 
								
							 | 
							
									changeCursor('grabbing');
							 | 
						
						
						
							| 
								
							 | 
							
								  });
							 | 
						
						
						
							| 
								
							 | 
							
								  network.on('dragging', function () {
							 | 
						
						
						
							| 
								
							 | 
							
									changeCursor('grabbing');
							 | 
						
						
						
							| 
								
							 | 
							
								  });
							 | 
						
						
						
							| 
								
							 | 
							
								  network.on('dragEnd', function () {
							 | 
						
						
						
							| 
								
							 | 
							
									changeCursor('grab');
							 | 
						
						
						
							| 
								
							 | 
							
								  });
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								</script>
							 | 
						
						
						
							| 
								
							 | 
							
								
							 | 
						
						
						
							| 
								
							 | 
							
								</body>
							 | 
						
						
						
							| 
								
							 | 
							
								</html>
							 | 
						
						
						
							| 
								
							 | 
							
								
							 |