|
| style.display = "none" fejler i IE7 men ik~ Fra : MooreHojer |
Dato : 08-10-08 17:31 |
|
Hej NG
Jeg bruger lidt javascript til at manipulere indholdet (visningen) af min side og det virker alt sammen fint i FF3, men når jeg tager det over i IE7 så virker det ikke længere.
Følgende giver en fejl i IE:
errormsg_password.style.display = "none";
Den siger at:
Egenskaben display kunne ikke hentes. Ugyldigt argument.
Kode 0
Nogen der kan hælpe mig på vej?
Arbejder på at kunne give jer et link men siden er pt. password-beskyttet så det skal jeg lige finde en måde at komme udenom...
--
MooreHojer
| |
Christian Hansen (08-10-2008)
| Kommentar Fra : Christian Hansen |
Dato : 08-10-08 19:34 |
|
MooreHojer wrote:
> Hej NG
>
> Jeg bruger lidt javascript til at manipulere indholdet (visningen) af
> min side og det virker alt sammen fint i FF3, men når jeg tager det over
> i IE7 så virker det ikke længere.
>
> Følgende giver en fejl i IE:
> errormsg_password.style.display = "none";
Hvad er errormsg_password ? er det et object af typen HTMLElement? (
eksempelvis en div?
Det kunne være fint, hvis du kunne medtage den del af koden, hvor
errormsg_password defineres.
Mvh christian
--
Christian Hansen
http://www.resource-it.dk/
| |
MooreHojer (08-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 08-10-08 19:48 |
|
> Det kunne være fint, hvis du kunne medtage den del af koden, hvor
> errormsg_password defineres.
Du finder koden i linkene fra mit andet indlæg (postet efter dit)
--
MooreHojer
| |
MooreHojer (08-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 08-10-08 19:47 |
| | |
Stig Johansen (08-10-2008)
| Kommentar Fra : Stig Johansen |
Dato : 08-10-08 20:01 |
|
MooreHojer wrote:
> Siden kan ses her:
> http://moorehojer.dk/basic/version1/backend/default.php?page=createProfile
Hmm.. giver:
PHP Notice: Undefined index: userID in D
\Domains\moorehojer\wwwroot\basic\version1\backend\default.php on line 62
PHP Warning: mysql_fetch_array(): supplied argument is not a valid MySQL
result resource in D
\Domains\moorehojer\wwwroot\basic\version1\backend\default.php on line 64
--
Med venlig hilsen
Stig Johansen
| |
MooreHojer (08-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 08-10-08 20:49 |
|
> Hmm.. giver:
> PHP Notice: Undefined index: userID
sorry.. er rettet
| |
Stig Johansen (08-10-2008)
| Kommentar Fra : Stig Johansen |
Dato : 08-10-08 23:06 |
|
MooreHojer wrote:
>> Hmm.. giver:
>> PHP Notice: Undefined index: userID
>
> sorry.. er rettet
Jeg har prøvet i min gamle Konqueror,FF3 samt IE6.
Det virker i Konqueror og FF, men ikke i IE6.
IE6 giver dog ingen fejl - der sker bare ikke noget ved ændring af
checkboxen.
Måske er det IE7 specifikt (har ikke IE7).
--
Med venlig hilsen
Stig Johansen
| |
Birger Sørensen (08-10-2008)
| Kommentar Fra : Birger Sørensen |
Dato : 08-10-08 23:03 |
|
MooreHojer forklarede den 08-10-2008:
>> Arbejder på at kunne give jer et link men siden er pt. password-beskyttet
>> så det skal jeg lige finde en måde at komme udenom...
>
> Siden kan ses her:
> http://moorehojer.dk/basic/version1/backend/default.php?page=createProfile
>
> Den relevante JavaScript kode ligger her:
> http://moorehojer.dk/basic/version1/backend/createProfile/createProfile.js.php
>
> Den kode der fejler er chooseUsername() som erden nederste funktion i filen.
>
>
> Fejlen opstår når jeg ændre checkboxen 'Let user choose on activation'
Umiddelbart, er der ikke noget galt med din kode, som også virker i FF,
uden at FireBug brokker sig.
Der er 3 XHTML valideringsfejl (hvorfor XHTML, når du ikke skriver i
XHTML?)
Jeg har oplevet at IE har den slags problemer, fordi M$ anvender
JScript og ikke javascript.
JScript kender elementet 'errormsg_password' i forvejen. Du finder
elementet igen, og kalder det samme navn, og jeg tror det kan give
problemer, selv om det ikke burde. Prøv at ændre navnene på de lokale
variable, og se om det gør en forskel.
Her kommer fejlen ikke når checkboxen ændres, men når checkboxen skal
checkes via labelen, ikke når check fjernes.
Men der bliver ikke ændret noget på skærmen - heller ikke når fejlen
ikke kommer.
Det kan måske hænge sammen med display:none, der også i andre
sammenhænge kan være problematisk.
display:none skaber ikke en usynlig box - den skaber slet ikke nogen.
Måske skal du overveje at bruge visibility i stedet...
Birger
| |
MooreHojer (08-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 08-10-08 23:53 |
|
> Der er 3 XHTML valideringsfejl (hvorfor XHTML, når du ikke skriver i
> XHTML?)
De 3 valideringsfejl er rettet nu
Hvad mener du med 'ikke skriver i XHTML'?
> Jeg har oplevet at IE har den slags problemer, fordi M$ anvender JScript
> og ikke javascript.
Længe leve Bill...
> Prøv at ændre navnene på de lokale
> variable, og se om det gør en forskel.
Det gi'r samme resultat
> Her kommer fejlen ikke når checkboxen ændres, men når checkboxen skal
> checkes via labelen, ikke når check fjernes.
> Men der bliver ikke ændret noget på skærmen - heller ikke når fejlen
> ikke kommer.
Ser ud til at det er det samme her...
> Måske skal du overveje at bruge visibility i stedet...
ok, det kigger jeg da fluks på
--
MooreHojer
| |
MooreHojer (09-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 09-10-08 00:14 |
|
>> Måske skal du overveje at bruge visibility i stedet...
>
> ok, det kigger jeg da fluks på
Har skiftet display ud med visibility og kan klart bedre lide den.
.... den ser dog heller ikke ud til at virke i IE
Jeg får samme fejl som før bare der nu står 'vivibility' i stedet for 'display'
--
MooreHojer
| |
Jens Peter Karlsen (09-10-2008)
| Kommentar Fra : Jens Peter Karlsen |
Dato : 09-10-08 01:37 |
|
Så vil det sikkert hjælpe at rette det til 'visibility'.
Regards Jens Peter Karlsen.
On Thu, 09 Oct 2008 01:14:02 +0200, MooreHojer <simon@moorehojer.dk>
wrote:
>Jeg får samme fejl som før bare der nu står 'vivibility' i stedet for 'display'
| |
Stig Johansen (09-10-2008)
| Kommentar Fra : Stig Johansen |
Dato : 09-10-08 06:30 |
|
"MooreHojer" <simon@moorehojer.dk> wrote in message
news:48ed3ec1$0$90271$14726298@news.sunsite.dk...
> >> Måske skal du overveje at bruge visibility i stedet...
> >
> > ok, det kigger jeg da fluks på
>
> Har skiftet display ud med visibility og kan klart bedre lide den.
> ... den ser dog heller ikke ud til at virke i IE
>
> Jeg får samme fejl som før bare der nu står 'vivibility' i stedet for
'display'
Bortset fra 'smartass kommentarer', så brokker min debugger sig over værdien
af propertien (collapse).
Det kunne se ud som om IE(6) ikke understøtter den.
Du kommer nok ikke uden om at lave noget IE specifikt, men jeg har
eksperimenteret med både display og visibility.
Dette her virker i min IE6, både display og visibility som fremgår af
comment.
(men ikke rigtig i FF)
Lidt afhængig af om du vil påvirke layoutet eller ej, kan du vælge den
metode der passer dig bedst.
Jeg har som sagt ikke IE7, men går ud fra det også vil virke der når det
virker i IE6.
<code snippet>
function chooseUsername()
{
var checkbox = document.getElementById("userChoose");
var credentialRow = document.getElementById("credentialRow");
if(checkbox.checked == true)
{
credentialRow.style.display = 'none' ; // visibility = "hidden";
}
else
{
credentialRow.style.display = '' ; // visibility = "visible";
}
}
</code snippet>
--
Med venlig hilsen/Best regards
Stig Johansen
| |
Birger Sørensen (09-10-2008)
| Kommentar Fra : Birger Sørensen |
Dato : 09-10-08 09:19 |
|
Stig Johansen forklarede:
> "MooreHojer" <simon@moorehojer.dk> wrote in message
> news:48ed3ec1$0$90271$14726298@news.sunsite.dk...
>>>> Måske skal du overveje at bruge visibility i stedet...
>>>
>>> ok, det kigger jeg da fluks på
>>
>> Har skiftet display ud med visibility og kan klart bedre lide den.
>> ... den ser dog heller ikke ud til at virke i IE
>>
>> Jeg får samme fejl som før bare der nu står 'vivibility' i stedet for
> 'display'
>
> Bortset fra 'smartass kommentarer', så brokker min debugger sig over værdien
> af propertien (collapse).
> Det kunne se ud som om IE(6) ikke understøtter den.
>
> Du kommer nok ikke uden om at lave noget IE specifikt, men jeg har
> eksperimenteret med både display og visibility.
>
> Dette her virker i min IE6, både display og visibility som fremgår af
> comment.
> (men ikke rigtig i FF)
>
> Lidt afhængig af om du vil påvirke layoutet eller ej, kan du vælge den
> metode der passer dig bedst.
> Jeg har som sagt ikke IE7, men går ud fra det også vil virke der når det
> virker i IE6.
>
> <code snippet>
> function chooseUsername()
> {
> var checkbox = document.getElementById("userChoose");
> var credentialRow = document.getElementById("credentialRow");
>
> if(checkbox.checked == true)
> {
> credentialRow.style.display = 'none' ; // visibility = "hidden";
> }
> else
> {
> credentialRow.style.display = '' ; // visibility = "visible";
> }
> }
> </code snippet>
Det er lidt "irriterende" - fra et bruger synspunkt - at den nederste
del flopper op og ned, afhængig af om den ekstra række er vist eller
ikke vist.
Det kunne se ud somom problemet på een eller anden måde er koblet
sammen med tabeller i IE.
Kunne du prøve at samle dem i en div, og så skjule/vise den div efter
behov, i stedet for at skulle manipulere tr'er og td'er?
Birger
| |
MooreHojer (09-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 09-10-08 12:25 |
|
> Det kunne se ud somom problemet på een eller anden måde er koblet sammen
> med tabeller i IE.
> Kunne du prøve at samle dem i en div, og så skjule/vise den div efter
> behov, i stedet for at skulle manipulere tr'er og td'er?
Har lige hurtigt smidt tabellen med brugernavn og password ind i en div og sætter visibility på den.
Det ser ud til at virke i FF og næsten i IE.
Grund til at siger 'næsten' er at:
-Den reagere ikke på at man klikker directe på checkboxen, kun labelel
-Den ser ud til at opføre sig modsat af FF (og intensionen) så den viser indholdet når der *er* et flueben
-Når den viser indholdet og jeg klikker på det så forsvinder der....
--
MooreHojer
| |
Birger Sørensen (09-10-2008)
| Kommentar Fra : Birger Sørensen |
Dato : 09-10-08 12:36 |
|
MooreHojer kom med følgende:
> Grund til at siger 'næsten' er at:
> -Den reagere ikke på at man klikker directe på checkboxen, kun labelel
> -Den ser ud til at opføre sig modsat af FF (og intensionen) så den viser
> indholdet når der *er* et flueben
> -Når den viser indholdet og jeg klikker på det så forsvinder der....
onchange kaldes først når elementet forlades og kun hvis der faktisk er
ændret på indholdet.
For at få umiddelbar reaktion, skal man bruge onclick, onkeydown,
onkeyup, etc.
Birger
| |
MooreHojer (09-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 09-10-08 12:53 |
|
> onchange kaldes først når elementet forlades og kun hvis der faktisk er
> ændret på indholdet.
>
> For at få umiddelbar reaktion, skal man bruge onclick, onkeydown,
> onkeyup, etc.
en ændring af onChange til onClick fik det til at virke i begge browsere... tusind tak for det
--
MooreHojer
| |
Stig Johansen (09-10-2008)
| Kommentar Fra : Stig Johansen |
Dato : 09-10-08 14:58 |
|
Birger Sørensen wrote:
> Stig Johansen forklarede:
>> Lidt afhængig af om du vil påvirke layoutet eller ej, kan du vælge den
>> metode der passer dig bedst.
>> Jeg har som sagt ikke IE7, men går ud fra det også vil virke der når det
>> virker i IE6.
>>
>> <code snippet>
>> function chooseUsername()
>> {
>> var checkbox = document.getElementById("userChoose");
>> var credentialRow = document.getElementById("credentialRow");
>>
>> if(checkbox.checked == true)
>> {
>> credentialRow.style.display = 'none' ; // visibility = "hidden";
>> }
>> else
>> {
>> credentialRow.style.display = '' ; // visibility = "visible";
>> }
>> }
>> </code snippet>
>
> Det er lidt "irriterende" - fra et bruger synspunkt - at den nederste
> del flopper op og ned, afhængig af om den ekstra række er vist eller
> ikke vist.
>
> Det kunne se ud somom problemet på een eller anden måde er koblet
> sammen med tabeller i IE.
> Kunne du prøve at samle dem i en div, og så skjule/vise den div efter
> behov, i stedet for at skulle manipulere tr'er og td'er?
Jeg er ikke 100% sikker på hvem du svarer her.
Men jeg angav 2 løsninger til IE(6), display og hidden, som begge 'virker'.
Den ene hopper, og den anden skifter mellem synlig og usynlig - ingen af
dem, synes jeg, er brugervenlig.
Hvis det var mig, ville jeg nok arbejde hen imod en løsning med
enabled/disabled, eller 'grået ud'/'greyed out', som nogen måske ville
kalde det.
Men det er ikke mit projekt.
--
Med venlig hilsen
Stig Johansen
| |
Birger Sørensen (09-10-2008)
| Kommentar Fra : Birger Sørensen |
Dato : 09-10-08 18:06 |
|
Stig Johansen frembragte:
>
> Jeg er ikke 100% sikker på hvem du svarer her.
> Men jeg angav 2 løsninger til IE(6), display og hidden, som begge 'virker'.
>
> Den ene hopper, og den anden skifter mellem synlig og usynlig - ingen af
> dem, synes jeg, er brugervenlig.
>
> Hvis det var mig, ville jeg nok arbejde hen imod en løsning med
> enabled/disabled, eller 'grået ud'/'greyed out', som nogen måske ville
> kalde det.
>
> Men det er ikke mit projekt.
Svaret var til MooreHojer :')
Jeg har ikke testet dine forslag, men så en anden mulighed i at få
tingene samlet, så det ikke er nødvendigt at tilpasse til browsere.
Kommentaren var lidt en tilskyndelse til at bruge visibility, da
display påvirker hele layoutet, og dermed rykker rundt på andre ting på
siden.
En løsning med enable/disable, ville IMHO være elegant.
Men det er jo heller ikke mit projekt
Birger
| |
Birger Sørensen (09-10-2008)
| Kommentar Fra : Birger Sørensen |
Dato : 09-10-08 09:04 |
|
MooreHojer kom med følgende:
>> Der er 3 XHTML valideringsfejl (hvorfor XHTML, når du ikke skriver i
>> XHTML?)
>
> De 3 valideringsfejl er rettet nu
> Hvad mener du med 'ikke skriver i XHTML'?
>
Venligt dril.
Fejlene skyltes XHTML specifikke krav - at din kode var HTML ikke
XHTML.
Birger
| |
Jens Peter Karlsen (09-10-2008)
| Kommentar Fra : Jens Peter Karlsen |
Dato : 09-10-08 01:59 |
|
Endnu en der synes at det er "cool" at han (næsten) helt selv har
fundet på at skrive M$ i stedet for MS (Tihii, fnis).
Til din orientering taler man i dag om ECMAScript som er den
standardiserede version af Javascript. Jscript er Microsofts
implementering af ECMAScript.
Regards Jens Peter Karlsen.
On Thu, 09 Oct 2008 00:03:21 +0200, Birger Sørensen
<sdc@bbsorensen.com> wrote:
>Jeg har oplevet at IE har den slags problemer, fordi M$ anvender
>JScript og ikke javascript.
| |
Birger Sørensen (09-10-2008)
| Kommentar Fra : Birger Sørensen |
Dato : 09-10-08 09:37 |
|
Jens Peter Karlsen formulerede torsdag:
> Endnu en der synes at det er "cool" at han (næsten) helt selv har
> fundet på at skrive M$ i stedet for MS (Tihii, fnis).
Jeg har brugt M$ som forkortelse for Microsoft siden en gang midt i
'90'erne..
Det er da fint, hvis du syntes det er cool. Men det er nu ikke noget
jeg har fundet på. Hvem der skal have den ære, ved jeg heller ikke.
Hvis det gør en forskel for dig, så prøv google..
> Til din orientering taler man i dag om ECMAScript som er den
> standardiserede version af Javascript. Jscript er Microsofts
> implementering af ECMAScript.
Jo, det var det, det handlede om:
At JScript gør visse ting forskelligt fra de andre implementeringer af
ECMAScript, som af de fleste kaldes javascript.
(Man kunne måske drage paraller til M$'s implementering af øvrige
standarder..)
> Regards Jens Peter Karlsen.
Var der en mening med dit indlæg?
Birger
| |
Jens Peter Karlsen (09-10-2008)
| Kommentar Fra : Jens Peter Karlsen |
Dato : 09-10-08 02:22 |
|
Du har: var checkbox...
checkbox er et reserveret navn. Brug noget andet.
Desuden er dit script til at checke sværhedsgrad på password dårligt.
Lav et password der validerer til godt, tilføj så et lowercase bogstav
til slut og vupti sværhedsgraden er nede på meget ringe.
Det ligner en om'er.
Regards Jens Peter Karlsen.
On Wed, 08 Oct 2008 20:47:23 +0200, MooreHojer <simon@moorehojer.dk>
wrote:
>Den relevante JavaScript kode ligger her:
> http://moorehojer.dk/basic/version1/backend/createProfile/createProfile.js.php
>
>Den kode der fejler er chooseUsername() som erden nederste funktion i filen.
| |
MooreHojer (09-10-2008)
| Kommentar Fra : MooreHojer |
Dato : 09-10-08 12:16 |
|
Jens Peter Karlsen wrote:
> Du har: var checkbox...
> checkbox er et reserveret navn. Brug noget andet.
det gjorde desværre ingen forskel...
--
MooreHojer
| |
Birger Sørensen (09-10-2008)
| Kommentar Fra : Birger Sørensen |
Dato : 09-10-08 12:45 |
| | |
|
|