HighDots Forums  

getAttribute non supportato da IE?

Javascript (Italian) Il linguaggio JavaScript (it.comp.lang.javascript)


Discuss getAttribute non supportato da IE? in the Javascript (Italian) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Pictor
 
Posts: n/a

Default getAttribute non supportato da IE? - 10-19-2006 , 10:45 AM







Ho questa funzione che su Firefox funziona perfettamente.

#####################################
function setAtt(attribute, replacer, to)
{
var A = to.getAttribute(attribute);
A = A.replace("X",replacer);
to.setAttribute(attribute,
to.getAttribute(attribute).replace("X",replacer));
}
#####################################

Su Internet Explorer mi dà errore alla 3a linea: var A =
to.getAttribute(attribute);

Mi dice "Proprietà o metodi non supportati" O_O

Come diavolo risolvo?
HO BISOGNO DI QUEL METODO!

Grazie


Reply With Quote
  #2  
Old   
Cristiano Larghi
 
Posts: n/a

Default Re: getAttribute non supportato da IE? - 10-19-2006 , 10:59 AM






In data 19 Oct 2006 07:45:57 -0700, Pictor ha scritto:

Quote:
Ho questa funzione che su Firefox funziona perfettamente.
ma ne sei certo? hai verificato la console javascript?

Quote:
var A = to.getAttribute(attribute);
io non vedo problemi in questa riga (ovviamente to deve essere un
riferimento valido...e nient'altro, se attribute non esiste restituisce
null non un errore):

http://msdn.microsoft.com/library/de...tattribute.asp

Quote:
Su Internet Explorer mi dà errore alla 3a linea: var A =
to.getAttribute(attribute);

Mi dice "Proprietà o metodi non supportati" O_O
a naso to non è un riferimento valido ad un oggetto.
un alert(typeof to) cosa dice? e un alert(to==null)?

--
"E' l' ignoranza che crea l'intolleranza
di gente cieca e senza coscienza"
S.S.S.


Reply With Quote
  #3  
Old   
ZER0
 
Posts: n/a

Default Re: getAttribute non supportato da IE? - 10-19-2006 , 11:02 AM



On 19 Oct 2006 07:45:57 -0700, Pictor wrote:

Quote:
#####################################
function setAtt(attribute, replacer, to)
{
var A = to.getAttribute(attribute);
A = A.replace("X",replacer);
to.setAttribute(attribute,
to.getAttribute(attribute).replace("X",replacer));
}
A parte che fai un passaggio in più ed inutile (che senso ha la variabile A
se poi la ignori nel setAttribute?)

Quote:
Su Internet Explorer mi dà errore alla 3a linea: var A =
to.getAttribute(attribute);
Si vede che "to" non si riferisce ad un oggetto che ha tale proprietà,
ovvero ad un nodo di tipo elemento. Magari è un nodo testo, magari è null, e
via dicendo.

Quote:
Mi dice "Proprietà o metodi non supportati" O_O

Come diavolo risolvo?
Cercando di capire a cosa punta "to" quando va in errore.

--
~ "Se un uomo non è disposto a lottare per le sue idee,
o le sue idee non valgono nulla o non vale niente lui." (Ezra Pound)



Reply With Quote
  #4  
Old   
Pictor
 
Posts: n/a

Default Re: getAttribute non supportato da IE? - 10-19-2006 , 11:48 AM



Cristiano Larghi ha scritto:

Quote:
In data 19 Oct 2006 07:45:57 -0700, Pictor ha scritto:

Ho questa funzione che su Firefox funziona perfettamente.
ma ne sei certo? hai verificato la console javascript?



Quote:
var A = to.getAttribute(attribute);
io non vedo problemi in questa riga (ovviamente to deve essere un
riferimento valido...e nient'altro, se attribute non esiste restituisce
null non un errore):

Ovviamente.
Come faccio a controllare che sia valido? (anche se E' valido!)

Quote:
http://msdn.microsoft.com/library/de...tattribute.asp

Su Internet Explorer mi dà errore alla 3a linea: var A =
to.getAttribute(attribute);

Mi dice "Proprietà o metodi non supportati" O_O
a naso to non è un riferimento valido ad un oggetto.
un alert(typeof to) cosa dice? e un alert(to==null)?
Ho trovato la magagna. Il metodo getAttribute non è supportato da IE
(come il setAttribute)

Ho risolto facendo un try/catch e usando (per IE) il metodo
'to[attribute] = <valore>'



Reply With Quote
  #5  
Old   
Pictor
 
Posts: n/a

Default Re: getAttribute non supportato da IE? - 10-19-2006 , 11:50 AM




ZER0 ha scritto:

Quote:
On 19 Oct 2006 07:45:57 -0700, Pictor wrote:

#####################################
function setAtt(attribute, replacer, to)
{
var A = to.getAttribute(attribute);
A = A.replace("X",replacer);
to.setAttribute(attribute,
to.getAttribute(attribute).replace("X",replacer));
}

A parte che fai un passaggio in più ed inutile (che senso ha la variabile A
se poi la ignori nel setAttribute?)

Una svista.... il secondo parametro della setAttribute dovrebbe essere
A

Quote:
Su Internet Explorer mi dà errore alla 3a linea: var A =
to.getAttribute(attribute);

Si vede che "to" non si riferisce ad un oggetto che ha tale proprietà,
ovvero ad un nodo di tipo elemento. Magari è un nodo testo, magari è null, e
via dicendo.

Mi dice "Proprietà o metodi non supportati" O_O

Come diavolo risolvo?

Cercando di capire a cosa punta "to" quando va in errore.
Scoperto che il metodo getAttribute non è supportato da IE



Reply With Quote
  #6  
Old   
ZER0
 
Posts: n/a

Default Re: getAttribute non supportato da IE? - 10-19-2006 , 12:00 PM



On 19 Oct 2006 08:50:30 -0700, Pictor wrote:

Quote:
A parte che fai un passaggio in più ed inutile (che senso ha la variabile A
se poi la ignori nel setAttribute?)

Una svista.... il secondo parametro della setAttribute dovrebbe essere
A
Immaginavo. Una svista ripetuta per due volte, ho notato.

Quote:
Su Internet Explorer mi dà errore alla 3a linea: var A =
to.getAttribute(attribute);

Si vede che "to" non si riferisce ad un oggetto che ha tale proprietà,
ovvero ad un nodo di tipo elemento. Magari è un nodo testo, magari è null, e
via dicendo.
[..]
Cercando di capire a cosa punta "to" quando va in errore.

Scoperto che il metodo getAttribute non è supportato da IE
Da un IE del quindicidiciotto, forse.

Non ci siamo capiti: il metodo getAttribute *è* supportato da IE. Se ti va
in errore "si vede che 'to' non si riferisce ad un oggetto che ha tale
proprietà o a un nodo di tipo elemento. Magari è un nodo testo, magari è
null, e via dicendo. Cerca di capire a cosa punta 'to' quando va in errore."

--
~ L'ingegnere non vive, funziona.



Reply With Quote
  #7  
Old   
Cristiano Larghi
 
Posts: n/a

Default Re: getAttribute non supportato da IE? - 10-19-2006 , 12:24 PM



In data 19 Oct 2006 08:48:41 -0700, Pictor ha scritto:

Quote:
Come faccio a controllare che sia valido? (anche se E' valido!)
te lo ho scritto: cosa indicano i typeof?

Quote:
Ho trovato la magagna. Il metodo getAttribute non è supportato da IE
(come il setAttribute)
bugia (a parte che lo ho usato varie volte, ma hai letto il link che ti ho
postato?)

--
"Non sai che ci vuol scienza
ci vuol costanza
ad invecchiare senza maturità"
F.G.


Reply With Quote
  #8  
Old   
Luke Skywalker
 
Posts: n/a

Default Re: getAttribute non supportato da IE? - 10-19-2006 , 04:24 PM



Pictor ha scritto:
Quote:
Scoperto che il metodo getAttribute non è supportato da IE
getAttribute() è supportato da IE ma potresti trovare il caso in cui lo
preferisce evitare.

Prova:

<p id="valoreId" onclick="alert(this.getAttribute('id'));">
cliccami
</p>

e poi prova con:

<p class="valoreClass" onclick="alert(this.getAttribute('class'));">
cliccami
</p>

Il secondo caso non va con IE.

Quindi il problema non è lì.

PS: anche il setAttribute è supportato da IE, ma anche in questo metodo,
ci sono casi particolari.

--
Luke S.

--

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad abuse (AT) newsland (DOT) it




Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.