I don't know why I wasn't thinking of this before; must need better coffee.
Thanks. On Dec 1, 5:00 am, Chris Broadfoot <[email protected]> wrote: > Right. I thought you meant a property of your own. > > Why not store it in the Marker after construction, like this? > > var url = getUrlForMarker(); // i assume you have some sort of url that > changes... > var marker = new google.maps.Marker({ > icon: url}); > > marker.iconUrl_ = url; > > then you can access the 'iconUrl_' property wherever you want. > > Alternatively (and probably better), store it as a MVC property with set and > get... > > marker.set('iconUrl', url); > > then you can marker.get('iconUrl') later. > > Chris > > > > > > > > On Wed, Dec 1, 2010 at 7:12 PM, JoshN <[email protected]> wrote: > > **Notice, I had a typo in my last message and wound up removing it to > > avoid leaving a bad snippet up.** > > > My earliest solution of using the private property broke with the most > > recent update to the API. Mainly, I was hoping that since url is a > > keyword arg for MarkerImage that there would be a getter (or a public > > property) for MarkerImage.url--I'm using markers in bounds to show a > > list of icons and titles. > > > I'm probably just splitting hairs on performance, but I feel odd using > > a RegExp for this sort of problem. > > > In case someone else needs to get this property, here is the solution > > I settled on: > > > google.maps.MarkerImage.prototype.getUrl = function(){ > > var re = /\.png|\.jpg|\.gif/; > > for(var p in this){ > > if(re.test(this[p])){ > > return this[p]; > > } > > } > > return > > } > > > Thanks for your attention. > > > On Nov 30, 11:22 pm, Chris Broadfoot <[email protected]> wrote: > > > No, there isn't. > > > > What was wrong with your approach of using a private property? > > > > On Wed, Dec 1, 2010 at 1:38 PM, JoshN <[email protected]> wrote: > > > > I was trying to figure out how to find the url of a markers icon. I had > > > > been using a private property before, but realized my error and now I'm > > > > curious if there is an accessor I should be using. In the meantime, I > > have > > > > been using this, which relies on prototypejs: > > > > > google.maps.Marker.prototype.getIconUrl = function(){ > > > > var strs = $H(this.getIcon()).find(String); > > > > re = /\.png|\.gif|\.jpg/; > > > > for(var i=0;i<strs.length;i++){ > > > > if(re.match(strs[i])){ > > > > return strs[i]; > > > > } > > > > } > > > > } > > > > > I'm sure there is a much better implementation, but I'm hoping this is > > a > > > > temp solution. > > > > > Any help is appreciated. > > > > > -- > > > > You received this message because you are subscribed to the Google > > Groups > > > > "Google Maps JavaScript API v3" group. > > > > To post to this group, send email to > > > > [email protected]. > > > > To unsubscribe from this group, send email to > > > > [email protected]<google-maps-js-api-v3%2B > > > > [email protected]><google-maps-js-api-v3%2B > > [email protected]> > > > > . > > > > For more options, visit this group at > > > >http://groups.google.com/group/google-maps-js-api-v3?hl=en. > > > -- > > You received this message because you are subscribed to the Google Groups > > "Google Maps JavaScript API v3" group. > > To post to this group, send email to > > [email protected]. > > To unsubscribe from this group, send email to > > [email protected]<google-maps-js-api-v3%2B > > [email protected]> > > . > > For more options, visit this group at > >http://groups.google.com/group/google-maps-js-api-v3?hl=en. -- You received this message because you are subscribed to the Google Groups "Google Maps JavaScript API v3" 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-js-api-v3?hl=en.
