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
-~----------~----~----~----~------~----~------~--~---