How Do You Pass Mouse Events Through DIV Element To The DIV Element Beneath It?
Apr 27, 2006
I'm using the Microsoft Virtual Earth Version 1 Commercial Control.
I want to make it so you can click on a pinpoint that's plotted on the
map and all mouse events are passed to the map so that the user can
click anywhere on the map (including the pin points) and drag/zoom the
map around.
For those of you who haven't used Virtual Earth:
Basically, there are a bunch on absolutely positioned Div elements. I
basically want to pass all mouse events from one absolutely positioned
div element to the absolutely positioned div element directly beneath
it.
If a div is positioned block or relative, events fire over the entire area of the div. If the div is positioned absolute they don't--they only fire over the div's text or image child elements, if any. This isn't true in FF or Opera, nor was it true in IE 5. If there is any logic in this behavior.
I'm trying to figure out a way to make only one element on a page receive key and mouse events. I have a grid in a <div>-container with "overflow:auto" which makes the grid scrollable. If course I can set event handlers to the "document" to catch key strokes and mouse clicks and execute navigation functions which make the grid scroll (e.g. pressing down arrow) etc. This of course effects the whole page and not just the div.
The problem is: as far as I know only window and form elements can receive events such as focus(), blur(), keypress() etc. and I have to make sure only this one element is affected.
Is there thus a way to make these events affect only the <div> container?
The best way to do this would be with an event listener as this would make development much easier.
i have a menu generated by a list with nested lists. i want the parent link to stay highlighted when the mouse hovers over the sub menus. because those sub menus are also generated by jquery (qtip), CSS alone won't do it (triedul.topnav li:hover a {background-color: #F00;}).is there a way to do this using jquery?
I have a TD element, with a SPAN element inside. I use td-s onmouseover and onmouseout events for a small animation. My problem is, that, when I move the cursor over the SPAN element, the onmouseout event for TD element is fired. I want to prevent this. With other words, I want onmouseout fired, just when the cursor is moved outside the td area. See the code..
I'm developing an image slider. I'd like to be able to trigger functions when the mouse leaves an area, sort of like
$('#someDiv').mouseout or $('#someDiv').mouseleave
except instead of passing the div to the function I have a dimension I'd like to pass to it.
I have box like so[code]...
I have calculated the dimensions from the left of the box to 25% of the width of the box to the right (or 100px from the left of the box) and also calculated the height of the box and top offset. I want to be able to say if the mouse leaves those dimensions, run a function.
Can I pass the dimensions and use mouseout or mouseleave? is this possible without using an HTML element?
I wonder if I can see somewhere what events are binded to a DOM element (in FireBug maybe). Maybe it's obvious, but I just don't know yet if it's even possible.
pardon my ignorance if this topic has been discussed before - I couldn't construct a search query that returned anything of the like!
Currently I have a set of two div elements, both of which span the width and height of the window. The top div plays host to a user interface, and the bottom div to various editable elements. The problem here lies in the fact that the user interface div is intercepting all mouse events, and as such neither the lower div nor any of its children may be interacted with.
And so my question is just that: is there any way to pass events through an element, or, more specifically, transparent sections of div elements? I have considered simply triggering the same event on the lower div, but without the ability to pass offset coordinates to the .trigger() function, it would require a rather undesirable amount of code to calculate which element on the lower div to trigger the even on...
My other consideration is to minimize the dimensions of the user interface layer (something similar to 50 x 50 px) and use absolute positioning to position the user interface widgets, additionally using a div element below the bottom div to constrain the movement and resizing of user interface widgets.
Is there any way in jQuery to move the order of events on a dom element. I have an element (the add button on a jQGrid display) that I want to place a click event in front of the one one put in by jQGrid. I had a look at the jquery.eventmanager plugin but that doesn't really allow the kind of manipulation I want. I also found it didn't like handling the click event anyway.
I'm thinking something along the lines of;
var saved = $(ele).getEvent('click'); //this function doesn't exist yet $(ele).unbind('click').bind('click.new',my_new_func).bind('click.old',saved);
I have a small problem with a page I'm working on. I have an anchor tag inside a table that has a mouseover event that updates a contextual help box. I need to add a similar mouseover event to the anchor tag that does the same thing, but updates the help box with different text. The problem I have is that when the mouse is over the table, no matter if I move the mouse over the anchor, the help text only displays the message that is passed from the table's mouseover function call. I think the solution *may* be something to do with event bubbling, but I'm not exactly sure how to implement it. The code I'm dealing with is below:
Here's something I'm working on: for a click on a given element, I want to be able capture the x/y coordinates of the mouse -- that is, the mouse coordinates relative to the top left corner of said element.
I have a script that's dimming the page by appending a black transparent canvas element to the body, positioning it over the page with a high z-index, and then using clearRect to cut out the sections of canvas element so that certain sections of the actual site show through..I'm having a hard time figuring out the best way to pass a click through the canvas and onto whatever would accept it if the canvas wasn't in the way so a user can edit the text.
My first choice was hiding the canvas on mousedown, and then listening for mouseup for everything underneath. but it looks terrible to have that 200ms flicker. can a trigger() be used to emulate a click at a certain (pageX,pageY)? the last option i can think of would be adding 30 divs and duplicate the punched-out canvas..but that seems like a lot of math, does anyone know of a plugin that does this? a reverse blockUI
I have a web page that renders a table with about 300 rows in it, which means vertical scrolling. At the end of the page there's a hidden div element sitting. Each row in the table contains a button which needs to call a javascript which should position the hidden div right next to the clicked button. I've tried a lot of different approaches that I've found on google, but all of them only position the div around the top area of the page. If I scroll down a ways and click the button, I have to scroll back up to the top of the page to find the div.
The primary target is users using IE8, but of course, if there's a cross-browser solution for this problem, that would be super!
The following code nicely gets the element ID for the element under the mouse on the mouse down event. It ignores a disabled element though I am assuming there is some way to get this done!
// IE is retarded and doesn't pass the event object if (e == null) e = window.event;
The following code nicely gets the element ID for the element under the mouse on the mouse down event.It ignores a disabled element though I am assuming there is some way to get this done![code]
I attach a mouseover event to a ul. Within the function I can use $(this) or this to refer to the ul.How can I refer to the li element over which the mouse is? And therefore make use of event delegation in jQuery.
I wrote a little live clock in JS (using Steve Levithan's "date format" code) that formats the time display according to a format string. I then find all elements by classname and search for a classname of "clock" and write the clock string to the innerHTML of every element I find.But recently I added another "feature". Rather than hard code a format string, I instead pass it in ID. Example:
<span class="clock" id="hh:mm:mm tt"></span>
..and the JS:
var doClock = function () { var now = new Date(); var e = getElementsByClassName('clock');
[code]...
Note that I am passing the clock FORMAT STRING by using the span's ID. It works great...
<a href="#" onclick="showDistributors('city0','raccoon0','national0',pass link text as variable into the function "showDistributors"); alert(this.text()); return false;">St Albans</a>
How do I pass the distributor name into the function as a variable? I am having trouble finding useful information on "this" method
When a user pushes their mouse down on a DOM element I want to allow them to move it, so I would like to setup an on mouse move function. The code i have is:
There are three variations of code below, the desired effect is to have the function fired when the mouse if held down on an element. The first two fire as soon as the page is loaded, and the third one never fires at all
Am creating text input element dynamically using DOM and i want to pass a event when onchange event is triggered.. Am able to assign the function to it but failing to pass the event..
My design involves two "layers". On the first layer, I have a circle, with some links in the middle. This is just a div with a background image, and some text in the center. Then I have another circle, same size and shape, on top of the first one, covering it up. This circle just has a one or two word title on it. When a user hovers over the title with their mouse, I want that div to disappear, showing the links underneath it. When you mouse out, the circle with the title should show back up.
Here is the basic HTML:
[Code]...
So what happens, is if you mouse over, the circle fades away just fine. But if you move your mouse at all again, even the slightest bit, the event is triggered again. So the title fades in and then out again real quick. Even if you actually mouse completely out of the CircleTitle div, it still triggers one last time instead of just fading in.
Because mouseenter keeps track of the mouse being over that element, and then that div disappears, it's probably causing some problems. But I don't know any other way to get this to work! If someone has some ideas,