Feature idea: Controlled by another element
LukeTOBrien opened this issue · 4 comments
Hello there,
I like your script very much and I had an idea of a feature to add.
What if I wanted the prevent the element from tilting on mouse over but rather have the element tilt when I move the mouse another element?
If you included a controller
option then I could set the controller to the selector of another div
, this way I could also control many tilt
elements with the same controller.
Something like:
VanillaTilt.init(document.querySelector(".your-element"), {
controller: '#controller-div'
});
Or HTML:
<div class="your-element" data-tilt data-tilt-controller="#controller-div"></div>
<div id="controller-div"></div>
You could even have a custom
(or manual
) API like so:
VanillaTilt.init(document.querySelector(".your-element"), {
controller: 'custom'
});
element.vanillaTilt.tilt({
x: 100,
y: 100
});
This would make it possible to keep a counter variable and tilt
the element inside a setInterval
for eg.
What do you think of this idea?
Unfortunately, I'm not working on adding new features to the library. I just wanted to provide a vanilla JS alternative for jQuery tilt.js. I'm focusing most of my free time on my Quick Cursor Android app.
the documentation mentions a mouse-event-element option which allows you to choose an element.
Is this the feature for this request?
It looks like it was a pull request long time ago that added this functionality: #37
But from what I quickly tested, it doesn't work as expected: https://jsbin.com/vedijevote/1/edit?html,output
It listens for events on the specified element, but it calculates the effect related to the main element, so it's not exactly what I expected.