Hi,

No you have understood me perfectly and provided the solution:



I wanted t

On Dec 9, 10:33 am, "T.J. Crowder" <[EMAIL PROTECTED]> wrote:
> Hi,
>
> Apologies in advance if I've misunderstood.
>
> > How do I reference these returned hash values?
>
> But it's no longer a Hash.  You've converted it to a string using
> Hash#toJSON[1].  If you want it to be a Hash, don't convert it to a
> string.  Change this:
>
>     return $H({x: w, y: h}).toJSON();
>
> to:
>
>     return $H({x: w, y: h});
>
> ...and then you can use the values via Hash#get[2], e.g., fb.offSet.get
> ('x').
>
> But taking things further:  Why make it a Hash?  Why not just use a
> POJO?  (Plain Old JavaScript Object)  If you make that line:
>
>     return {x: w, y: h};
>
> ...then you can use the properties directly (fb.offSet.x) the way you
> tried to initially.
>
> [1]http://www.prototypejs.org/api/hash/tojson
> [2]http://www.prototypejs.org/api/hash/get
>
> HTH,
> --
> T.J. Crowder
> tj / crowder software / com
>
> On Dec 8, 4:10 pm, "Techno~" <[EMAIL PROTECTED]> wrote:
>
> > I am trying to access a value that is returned via the $H.toJSON
> > method.
>
> > However, my alerts keeps saying that it is undefined.
>
> > Any pointers gratefully received
>
> > ==== code ====
> > var Feedback = Class.create({
>
> >         initialize: function() {
> >                 this.offSet = this.getOffsets();
> >         },
>
> >         getOffsets: function() {
> >                 if (window.innerHeight) {
> >                         h = window.innerWidth;
> >                         w = window.innerHeight;
> >                 } else if (document.documentElement &&
> > document.documentElement.clientHeight) {
> >                         h = document.documentElement.clientWidth;
> >                         w = document.documentElement.clientHeight;
> >                 } else if (document.body) {
> >                         h = document.body.clientWidth;
> >                         w = document.body.clientHeight;
> >                 }
>
> >                 return $H({x: w, y: h}).toJSON();
> >         }})
>
> > ==== end code ====
>
> > === mark-up snippet ===
> >         <script type="text/javascript">
> >                 var fb = new Feedback;
> >         </script>
>
> > <body onload="alert(fb.offSet.x)">
> > === mark-up end ===
>
> > if I alert(fb.offSet) I receive {"x":878,"y":1563}
>
> > I have tried multiple variations:
>
> > fb.offSet[0].x
> > fb.offSet[x]
> > fb.offSet[0]["x"]
> > fb.offSet.x[0]
> > fb.offSet[0].x[0]
>
> > Some just error out some returned undefined.
>
> > How do I reference these returned hash values?
>
> > TIA
> > Techno~
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" 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/prototype-scriptaculous?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to