> function SegmentSelectControl() {}
> ...
>     var segment_selector = document.createElement("select");

So we define segment_selector in local scope

>     GEvent.addDomListener(segment_selector, "change", function(){
>       goToSegment(segment_selector.selectedIndex);

Here we capture segment selector by way of 'function closure'

> function goToSegment(index) {
> ...
>   segment_selector.selectedIndex = index;

If we arrive here from the change click listener, the javascript
object segment_selector will be in scope.
If however we arrive from a map click it won't exist.  Different
browsers now do different things trying to find it ... IE for example
will search the DOM and find a <select> element that happens to have
an id set to 'segment_selector' and thinks it will use that
instead ... luckily it's the right element too.

I think!!  This scope stuff is hard ...

The fix should be to declare your object globally outside all
functions
   var segment_selector;
then in the function where you create it properly just don't use the
var

cheers, Ross K

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Maps API" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/Google-Maps-API?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to