Comments (8)
@joric the cursor is changing to pointer because the background is clickable. That is indicated by defining a handler for onBackgroundClick
.
It's not recommended but if you want you could override that styling by forcing cursor: default
on css, everytime a node's hover is completed, i.e. onNodeHover(node => !node && /* your code */)
.
from force-graph.
@wunaidage you can simply detect click events on your DOM element. Background clicks will bubble up the DOM and can be detected upstream.
from force-graph.
well, I tried. Clicking on node and link will always be triggered before the dom click. What I was doing is to click on node to highlight node and click on outside to cancel highlight. But when I add listener on DOM, I cannot even highlight the node anymore. It turns out that it was highlighted first by force-graph and then cancelled by dom click.
from force-graph.
I think the lib is adding click listener on the canvas but I'm adding listener on the container which cause that sequence
from force-graph.
@wunaidage I've just added two methods to help you with handling these cases:
graph
.onBackgroundClick(() => ...)
.onBackgroundRightClick(() => ...)
Make sure to pull the latest version (1.20.0
).
from force-graph.
wow!! thanks a lot!!!
from force-graph.
@wunaidage how can I change cursor from hand to arrow? It doesn't look good if pointer is the same on the nodes and on the background.
from force-graph.
@vasturiano I had to use timeout like this, doesn't work without it. Shouldn't be too large, or it affects the nodes:
.onNodeHover(node=>!node && setTimeout(()=>document.querySelector('canvas').classList.remove('clickable'),5))
from force-graph.
Related Issues (20)
- Conditional node styling based on data values/accessor method (i.e. circles for person, squares for place) HOT 2
- mousedown event not working after adding it HOT 2
- Link offsets? HOT 1
- How to conditionally change linkLineDash between nodes HOT 1
- Curved arrows HOT 2
- How to draw nodes around a circle HOT 2
- How to avoid collisions of nodes. HOT 1
- Problems with labels, and dragging when openin from Brave browser with shield on. HOT 1
- Conditional in linkDirectionalParticles does not use correct return value HOT 1
- Option to always show node labels HOT 2
- How to implement incremental graphData update on zoom and pan? HOT 4
- [Bug]: When nodes are rapidly dragged multiple times in succession, it will be recognized as dragging the canvas
- Discrepency between .json files used in demo and syntax on README HOT 2
- Detecting right click when mouse is moving
- Constant node size, independent of zoom HOT 1
- onNodeRightClick doesnt on macbook keyboard+trackpad HOT 2
- How to display nodes together that are identical HOT 1
- Node is not below its parent when creating the tree HOT 1
- unconnected nodes drifting infinitely away HOT 1
- Scrolling on mobile browser
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from force-graph.