Event Bubbling...
Mar 27, 2007
Wanting to have a table cell select it's contained radiobutton in a
rather non-specific way, I wrote the following javascript:
function click_it(element)
{
var x = element.childNodes
for(var i=0;i<x.length;x++)
{
var tag = x[i];
if(!tag.tagName || tag.tagName != "INPUT")
continue;
tag.checked = !tag.checked;
}}
It works fine for clicking the table cell and selecting contained
radiobuttons. However, when actually clicking the radiobutton, the
browser decides (correctly) to first fire the internal radiobutton
click event, thus selecting the radiobutton - and THEN fireing the
click handler for my table cell, thus de-selecting it again :-P If
this was to only work for radiobuttons, I could easily make it do
"tag.checked = 1" every time, but it needs to work for checkboxes too,
so the de-select should work too (if checked).
View 2 Replies
ADVERTISEMENT
Feb 5, 2010
have a small div above (hover) a big one. I assign onmouseover and onmouseout events to the wrapper div. For image caption roll-over animation. The problem is when the mouse is above the caption itself, causing an unwanted result(probably event bubbling).
And another problem: sometimes when you move mouse from outside to container you get a a triple debug sequence: (it should be just 2): -I am over- -I am out- -I am over- (firebug console) How to make it work? (no jquery) must work on all browsers.[URL]... The wanted result: When mouse moved over the image, only mouseover event should be raised once When mouse moved out from the image, only the mouseout event should be raised. when mouse is over the captionm it should be treated as if the mouse is still on the image. (no flickering)
View 3 Replies
View Related
Apr 30, 2009
Ive written this source
[Code]...
View 7 Replies
View Related
Oct 23, 2009
I am trying to organise some code on a large project I'm doing which changes a lot of code around the page with submit forms. As jQuery doesn't have a live support for submit elements I thought I'd try my hand at event bubbling. It works nicely in firefox but isn't working at all in IE.
[code]
$('#data').submit( function(e) {
/* When a edit form is selected */
if (e.target.className == 'edit_link'){
//ajax request
}});
[/code]
I have a div with an id #data inside this div is a table with data and forms at the end of each of the row to edit parameters. When I click edit it loads a form in another div outside the #data one via ajax then the user can change the values and hit update (which has a class of .edit_link ) at which point it should reload the #data div. The reloading of the #data div is why I need some sort of live event to it. I've tried doing the way above and it works great in firefox but not in IE. Just to clarify the submit doesn't fire at all.
View 1 Replies
View Related
Oct 11, 2006
I've been implementing a drop menu in javascript, and I'm finding it difficult to understand why the event bubbling system is implemented as it is. In summary, I want an event to occur when the mouse enters/exits a large div or table that contains many descendent elements.
It appears to me, from experimenting with IE6 and Moz 5, that the event is generated *only* on the lowest element, thus given a table which contains tbody, tr and tds, with an onmouseover listener assigned to the table element (as a property), the onmouseover event is generated only for the td, although the mouse actually entered all these elements.
If there is a slight gap between elements you sometimes get events for the higher element. I guess this is a side-effect of the browser's implementation - sampling the mouse position.
My understanding of event bubbling from "JavaScript the definitive guide" is that events should bubble up the heirarchy unless they are stopped by the stopPropagation() method.
View 4 Replies
View Related
Jun 15, 2010
building a tree using UL,LI tags as below. Issue seems with cancelling event bubbling. trying to cancel dragenter event to avoid dragenter firing for root LI. dragenter on image cancels bubbling. But dragenter on the child text bubbles and fires for Root. Whole purpose is to identify LI where its dropped. Edit: Noticed this is working as expected in IE6 and not working with IE8.
[Code]...
View 1 Replies
View Related
Sep 12, 2011
I just want to understand the concept of event bubbling, capturing and delegation. I have read a lot about them but still unable to fully understand them (capturing, bubbling, delegation).
View 1 Replies
View Related
Jan 9, 2012
I'm in the process of integrating the google maps api into my application. Unfortunately, my events seem to be bubbling. If I open the google maps info window 3 times and click the next button respectively, on the forth time when I click the next button the next event will fire four times. How do I stop this?
$("#google_map_canvas").on("click", "#next", function() {
var toHighlight = $('.first').next().length > 0 ?
$('.first').next() : $('#infoWin li').first();
$(this).fadeOut(100);
$('.first').fadeOut(100);
$('.first').delay(100).removeClass('first');
toHighlight.delay(100).addClass('first');
$('.first').delay(100).fadeIn(100);
$(this).delay(100).fadeIn(100);
});
View 7 Replies
View Related
Nov 19, 2011
I have a<button>element inside of which I have 2<span>elements. I have 2 attached jquery click event handlers for each of the span elements so I can do whatever I like for each click. This is all working fine in Chrome and the click event is captured in the correct order: first on any of the span elements and then the event bubbles up to the parent button element. The problem is that in Firefox the click event does not fire for any of the span elements, just the button event handler logs the event as being fired.[URL]..
View 4 Replies
View Related
Aug 14, 2011
I'mtryingto put the right code in place to stop event bubbling on my menu script. I have a the following code for the mouseenter event. I can't find where's appropraite to put stopPropagation()
menu_trigger is an array which is cycled through to put the mouseenter event onto the right <th> tags menu_objects is an array linking to the menu which should be shown.
[Code]...
View 1 Replies
View Related
Sep 15, 2010
im having trouble using JQUERYs animate function. Basicly the div has a mouseover event that slides another div (that is inside the original div) upwards. The first div has a mouseout event that slides the second div downwards and out of view. The problem being that when you hover over the second div it fires the first divs mouseout event. Ive tried googling this and have tried adding some event bubbling but having serious trouble with it. here is the website... [URL] hover over the image and you should see the caption appear, roll over the caption and it goes crazy.
[Code]....
View 3 Replies
View Related
Feb 10, 2007
I have a div called 'options' which contains another called 'settings'. I want 'settings' to have a left border when the mouse is over 'options', but not when it's over 'settings'. I tried the code below but the style isn't being overwritten by the second onmouseover function.
function sett() {
var o = document.getElementById('options');
var s = document.getElementById('settings');
if (o && s) {
o.onmouseover = function() {
s.style.borderLeft = Ƈpx solid #88B216'
}
o.onmouseout = function() {
s.removeAttribute('style');
}
s.onmouseover = function() {
s.className = 'settingsactive'
s.style.borderLeft = 'none'
}
s.onmouseout = function() {
s.removeAttribute('className');
} }}
What can I do?
View 4 Replies
View Related
Sep 14, 2010
At work I have written a form builder which is all drag and drop.
The issue I have is with ending the drop, I have no problems in IE. The drag is controlled by the onmousemove and onmouseup events for the document body.
The trouble is, in Firefox, if the cursor is over a form item, then the onmouseup event doesn't fire and therefore the drag doesn't end.
There is no problem with other items, other HTML items, tables, list, divs, then all bubble the event to the body.
Anyone ever come across this, if so how did you get round it.
Do I need to manually make form elements bubble in Firefox? Maybe I should just stick a div opacity 0 over the drag objects and make that call the body's onmouseup event.
View 3 Replies
View Related
Apr 24, 2007
The objective is to create a stacked, inline vertical menu. Upon mousing over a menu option, a series of sublinks (children) presents itself immediately beneath the parent. The children push the rest of the menu options downward. We're ok up to this point.
Should the mouse pointer point to another menu option, the children of the former menu option pointed at disappear and the new children are displayed. We're still ok. Here's the code I use to accomplish this: Code:
View 4 Replies
View Related
Jul 4, 2009
I got this problem with live() event.I have used it as follows.
$(".addressDiv span").live("mouseover", function(){
//clickable function here......
------------------------
});
I have used the live() event to trigger the function on mouseover in the dynamically added elements. But the problem i got is that once the live event is called it takes the class of the element and stores. And when the class of that particular element is changed dynamically the live() event does not detect the new classed added dynamically, instead it takes the former class. Live() event does not update the class.
View 3 Replies
View Related
Apr 3, 2007
I have an iframe that includes a button:
<input type="button" value="close this window" onclick="window.close();" >
I would like to detect the iframe close event from the parent window, I
was using this code but I did something wrong because the temp function
is fired every time the parent page loads:
function temp(){
alert('the iframe was closed');
}
function setup(){
var myIFrame = document.getElementById("iframe1");
if (myIFrame.addEventListener) {
myIFrame.addEventListener('onclose', temp(), false);
}else if (myIFrame.attachEvent) {
myIFrame.attachEvent ('onclose',temp);
}else{
myIFrame.onclose=temp();
}
}
window.onload=setup;
View 4 Replies
View Related
Aug 19, 2011
how can i know the original element that raised the event if that event is propagated up the tree ?
View 6 Replies
View Related
Jul 6, 2009
As far as I understood, stopPropagation() is supposed to stop events bubbling 'up' though the element tree (through parent elements). Eg. If I use stopPropagation() on a click event on an anchor element in a list, the event would not be triggered on the list. In my code I have a popup div, that needs to have stopPropagation(), as a click on the document (everywhere other than the popup) will hide it. When I add an element to the popup that has a live click event, the live click event is never called, even though it is a child element of the popup. Shouldn't the live click get called first? If I remove the stopPropagation all is well.. some code:
$('#a_test_link').live("click", function(e){
e.preventDefault();
alert('done!');
});
[Code].....
View 1 Replies
View Related
Jan 21, 2010
I'm currently facing a weird issue with the onchange event. I have a web application where each blur event makes a call the webserver to store the value of the textfield. I only want to trigger that ajax call when something has changed, so i track the onchange event on each textfield to set a flag if something has changed.
The onchange event always fires to first time when i click outside of a textfield even if i didn't change anything in the field.
I narrowed it down to the following: A prefilled textfield always fires the onchange-event the first time you leave the textfield. An initially empty textfield does not fire the onchange event.
Sample code (IE 8 on Windows 7 computer):
script:
HTML:
View 5 Replies
View Related
Jun 27, 2011
Is there a generic way to fire an event when the state/value of a checkbox is changed by another event - i.e. not a user action. In this scenario, I have a set of checkboxes with a "select all" checkbox. I have the code written such that checking or unchecking the "select all" checkbox updates the state of all of the checkboxes below.
The extra requirement here is that some of these checkboxes have "children". So, when you check one of these, its children are automatically checked as well. So, what I need to do is check the main "select all" checkbox, which would then check all of the immediate children, which would then check all of their immediate children. I tried both an onchange and onclick event, but neither seem to be firing.
<html>
<head>
<script src="/scripts/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
<script>
[code]....
View 1 Replies
View Related
Aug 13, 2011
look at this script :
$(function(){
$('input').bind('keypress',null,b).bind('change',null,a);
});
function a(){
[Code].....
this script bind both keypress and change of the text box to functions b and a. at keypress event handler if user type a char on input box the value of input box change to x and the user char discarded. In this case we expected to run the onchange (change) event because the textbox value is changed BUT this doesn't happen.
View 1 Replies
View Related
Apr 8, 2010
I have an object that has a click event I'm trying to trigger. However in the click event I have the following if statement:
if(event.button != 0){return true;}
This if statement allows right clicks to go through and activate but it also prevents me from triggering the event. Any ideas on how to prevent this? If I remove the if statement from the first click function everything works as intended.Here's my example code based off of the trigger event examples:
<!DOCTYPE html>
<html>
<head>
[code]....
View 5 Replies
View Related
Jun 9, 2009
This is just a page swapping images on the mouseover event, but i want to remove the mouseover events from all links when the the on click function is triggered, this is the html code,
View 3 Replies
View Related
Aug 26, 2010
I tried 2 smilar code.
first one :
In this code first 111 message is shown then the other is shown. everything is ok for me in this code.
Then i tried second code.
But in this code 111 message is not shown. What is the problem. my aim for this code, calling same event in one <script> tags. How can i do this?
View 2 Replies
View Related
Jan 9, 2009
currently on our site we have and expanding <div> that responds to both the onmouseover and onmouseout events. It works wonderfully.
The UX people now would like the expanding <div> to open with the onclick event and then as soon as the mouse leaves the expanded div, it would close. I have tried using the onmouseout event in conjunction the onclick event but it does not work (the div persists).
View 1 Replies
View Related
Dec 16, 2010
The DOM Level 3 specification has a section (1.2.2.2) that talks briefly about "groups" of event listeners. What does this mean? Is this similar to attaching event listeners with a namespace, as in jQuery: "event.my_namespace"?
View 2 Replies
View Related