Prototype and IE

2 views
Skip to first unread message

glauber portella

unread,
Dec 21, 2009, 5:12:44 AM12/21/09
to Prototype & script.aculo.us
Hello,

i am using ajax from prototype and some effects with scriptaculous and
i am getting a strange behaviour when it is to be executed in Internet
Explorer, my code use prototype history manager and for some reason my
contents isn't show in IE, the core of the javascript is listed below:

var site = null;

var Chiquinho = Class.create();

Chiquinho.prototype = {
initialize : function(links) {
this.justloaded = true;
this.currentLink = undefined;
this.links = links;
this.contentEl = $('ajax-content');

this.site_urls = {
home : '/',
empresa : '/empresa',
artista : '/artista',
agenda : '/agenda',
locacao : '/locacao',
contrate : '/contrate',
depoimento : '/depoimento',
parceiro : '/parceiro',
contato : '/contato',
artista1 : '/artista/show/id/1',
artista2 : '/artista/show/id/2',
artista3 : '/artista/show/id/3',
artista4 : '/artista/show/id/4',
artista5 : '/artista/show/id/5',
artista6 : '/artista/show/id/6',
artista7 : '/artista/show/id/7',
artista8 : '/artista/show/id/8',
artista9 : '/artista/show/id/9',
artista10 : '/artista/show/id/10',
artista11 : '/artista/show/id/11',
artista12 : '/artista/show/id/12',
artista13 : '/artista/show/id/13',
artista14 : '/artista/show/id/14',
artista15 : '/artista/show/id/15',
artista16 : '/artista/show/id/16',
artista17 : '/artista/show/id/17',
artista18 : '/artista/show/id/18',
artista19 : '/artista/show/id/19'
};

this.protoHistoryManager = new ProtoHistoryManager();
this.reqHistory = this.protoHistoryManager.register('pages',
[ this.links[0] ], // default, page 0
function(values) {
var index = this.links.indexOf(values[0]);
if (index == 0 && this.justloaded) {
return;
}

if (index != -1) {
this.justloaded = false;
this.linkClick(this.site_urls[values[0]], values[0]);
}
}.bind(this));
this.protoHistoryManager.start();
},

linkClick : function(url, linkid) {
this.currentLink = {
url : url,
linkid : linkid
};
this.cleanContent();
this.reqHistory.setValue(0, linkid);
},

cleanContent : function() {
new Effect.Appear(this.contentEl, {
from : 1.0,
to : 0.0,
duration : 1.0,
afterFinish : this.getPage.bind(this)
});
},

getPage : function() {
if (this.currentLink != undefined) {
var url = this.currentLink.url;
new Ajax.Updater('ajax-content', url, {
onSuccess : function() {
new Effect.Appear(this.contentEl, {
from : 0.0,
to : 1.0,
duration : 1.0
});
}.bind(this)
});
}
}
};

Event.onDOMReady(function() {
site = new Chiquinho( [
'home', 'empresa', 'artista', 'agenda',
'locacao',
'contrate', 'depoimento', 'parceiro',
'contato',
'artista1', 'artista2', 'artista3',
'artista4',
'artista5', 'artista6', 'artista7',
'artista8',
'artista9', 'artista10', 'artista11',
'artista12',
'artista13', 'artista14', 'artista15',
'artista16',
'artista17', 'artista18', 'artista19'
] );
});

the getPage seen to not show contents returned from ajax in all
versions of IE (from 6 to 8) how to overcome this and show my content
as it is done with Firefox and Chrome ?

PS.: if anyone wants to see the real test (from the site) access
http://teste.chiquinholins.com.br

Thanks a lot.

T.J. Crowder

unread,
Dec 21, 2009, 8:11:49 AM12/21/09
to Prototype & script.aculo.us
Hi,

I can't address the ProtoHistoryManager stuff, never seen that. But
the `getPage` call looks fine.

IE has issues with confusing IDs and names; do you have *anything*
else on your page with the ID _or_ name "ajax-content"?

[Possibly OT] What version of Prototype are you using? Because your
Class.create call doesn't look like it's for the current version of
Prototype (1.6.1). Since 1.6.0, you shouldn't replace the prototype on
a class you've created with 1.6.x's Class.create. More:
http://api.prototypejs.org/language/class.html ]

HTH,
--
T.J. Crowder
Independent Software Consultant
tj / crowder software / com
www.crowdersoftware.com


On Dec 21, 10:12 am, glauber portella <glauberporte...@gmail.com>
wrote:

Glauber Portella

unread,
Dec 21, 2009, 9:51:35 AM12/21/09
to prototype-s...@googlegroups.com
Hi T.J. Crowder

ajax-content is the only ID for the content element.

I am working with Prototype Version: 1.6.0.3 i will read and alter to the proper usage of Class.create.

Ps.: ProtoHistoryManager is from one extension that i get in http://scripteka.com/ (Prototype.HistoryManager)

Thanks

2009/12/21 T.J. Crowder <t...@crowdersoftware.com>
>
> Thanks a lot.

--

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 prototype-s...@googlegroups.com.
To unsubscribe from this group, send email to prototype-scripta...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/prototype-scriptaculous?hl=en.





--
Glauber Portella
Fone: (31) 4101-6242
Cel: (31) 9374-4476
E-mail alternativo: glauber...@yahoo.com.br

Glauber Portella

unread,
Dec 21, 2009, 10:53:10 AM12/21/09
to prototype-s...@googlegroups.com
Nothing changed when i rewrite to not replace protoype in Class.create.
Any other sugestion to try ??

Thanks

2009/12/21 Glauber Portella <glauber...@gmail.com>

Glauber Portella

unread,
Dec 21, 2009, 12:00:19 PM12/21/09
to prototype-s...@googlegroups.com
I updated my prototype and scriptaculous version and the problem didnt go away.

I removed the history manager too to see if was a problem with it but it wasn't.

Please help me!

2009/12/21 Glauber Portella <glauber...@gmail.com>

T.J. Crowder

unread,
Dec 21, 2009, 5:48:49 PM12/21/09
to Prototype & script.aculo.us
Hi,

I'm afraid there's nothing much to do other than step through it in a
debugger (yes, there _are_ debuggers for IE, the script debugger[1]
and Visual Studio) and figure out at what point it's breaking. If you
can figure out where it's breaking and post that, we may be able to
help.

[1] http://www.microsoft.com/downloads/details.aspx?familyid=2f465be0-94fd-4569-b3c4-dffdf19ccd99&displaylang=en

Sorry not to have a better idea for you...


--
T.J. Crowder
Independent Software Consultant
tj / crowder software / com
www.crowdersoftware.com


On Dec 21, 5:00 pm, Glauber Portella <glauberporte...@gmail.com>
wrote:


> I updated my prototype and scriptaculous version and the problem didnt go
> away.
>
> I removed the history manager too to see if was a problem with it but it
> wasn't.
>
> Please help me!
>

> 2009/12/21 Glauber Portella <glauberporte...@gmail.com>


>
>
>
>
>
> > Nothing changed when i rewrite to not replace protoype in Class.create.
> > Any other sugestion to try ??
>
> > Thanks
>

> > 2009/12/21 Glauber Portella <glauberporte...@gmail.com>

> >>> prototype-scripta...@googlegroups.com<prototype-scriptaculou s%2Bunsu...@googlegroups.com>


> >>> .
> >>> For more options, visit this group at
> >>>http://groups.google.com/group/prototype-scriptaculous?hl=en.
>
> >> --
> >> Glauber Portella
> >> Fone: (31) 4101-6242
> >> Cel: (31) 9374-4476

> >> E-mail alternativo: glauberporte...@yahoo.com.br


>
> > --
> > Glauber Portella
> > Fone: (31) 4101-6242
> > Cel: (31) 9374-4476

> > E-mail alternativo: glauberporte...@yahoo.com.br


>
> --
> Glauber Portella
> Fone: (31) 4101-6242
> Cel: (31) 9374-4476

> E-mail alternativo: glauberporte...@yahoo.com.br

Glauber Portella

unread,
Dec 22, 2009, 7:36:44 AM12/22/09
to prototype-s...@googlegroups.com
Hi,

i get the problem, it was a span with some attributes that was inserted in a hiperlink the code that generated the non-show elementos on links was:

<a onclick='site.linkClick("/", "home"); return false;' href="#" class="link-home"><span style="display: block; visibility: hidden;"/></a>

the <span> block that caused the problem in IE.

Thanks for the insights.

2009/12/21 T.J. Crowder <t...@crowdersoftware.com>
To unsubscribe from this group, send email to prototype-scripta...@googlegroups.com.

For more options, visit this group at http://groups.google.com/group/prototype-scriptaculous?hl=en.





--
Glauber Portella
Fone: (31) 4101-6242
Cel: (31) 9374-4476
E-mail alternativo: glauber...@yahoo.com.br
Reply all
Reply to author
Forward
0 new messages