oskobMedlem sedan maj 20021 558 inläggHej!
Jag sitter och pular med ett script som fungerar i FireFox men inte i explorer.
Jag blir dock inte klok på exlorers felmeddelanden. Finns det något sätt att man kan få ett vettigt felmeddelande?
Jag får tex nu "Objektet stödjer inte egenskapen eller metoden" och så säger den att det är rad 108 som falierar. Men rad 108 är helt tom. Har tidigare råkat ut för att den hänvisar till helt fel rader. Vad beror det på? Hur hittar jag var felet är. Det är omöjligt för mig att skumma igenom 185 rader kod för att hitta ett eventuellt fel som skulle kunna dumma sig i explorer.
What to do?
UlfTMedlem sedan maj 20018 027 inläggKolla om det är raden innan eller efter som strular.
oskobMedlem sedan maj 20021 558 inläggNej jag fick köra med en idiotmetod och la in en alert i scriptet och flyttade den neråt tills den inte kom fram längre och på så vis hittade jag den felaktiga raden. Men det är ju idiotiskt att behöva göra så. Den riktiga felraden låg 5 rader ovanför den som explorer sa. Det roligaste är att vid nästa fel jag hittade så låg den bara 3 rader under.
Mycket irriterande.
stattinMedlem sedan jan. 2005713 inläggdå är det enklare att plocka bort eller korta ner all text som sträcker sig över fler än 1 rad.. förstår du? eftersom det räknas som 1 rad.
GislavedMedlem sedan nov. 20041 740 inlägg
oskobMedlem sedan maj 20021 558 inlägg
stattin skrev:
då är det enklare att plocka bort eller korta ner all text som sträcker sig över fler än 1 rad.. förstår du? eftersom det räknas som 1 rad.
Kan det vara så att Explorer räknar långa rader som 2 och att Dreamweaver inte gör det? Låter konstigt.
gislaved skrev:
Det här kanske kan vara intressant för dig?
http://blogs.msdn.com/ie/archive/2004/10/26/247912.aspx
Ska kolla upp det där!
@ndersMedlem sedan juni 200032 969 inläggIE i sig är helt hopplöst för javascriptdebugging, men det blir lite bättre om man använder Visual Studio för utveckling. Om man gör så; se till att inte "Disable script debugging (Internet Explorer) är förkryssad i inställningarna i IE, och när ett javascriptfel uppträder, välj att debugga i Visual Studio.
Gislaveds länk verkar vettig angående detta.
Någon som har testat IE7 och kan svara på om vi får bättre möjligheter för att debugga javascript direkt i läsaren?
mvh
oskobMedlem sedan maj 20021 558 inläggDumfråga: Visual studio kostar en del va? Känns lite overkill. Men jag känner igen det där "debug in visual studio". Har sett det vid något tillfälle. Var och när har jag ingen aning om dock :/
@ndersMedlem sedan juni 200032 969 inläggVisual Studio kostar en hel del. Det är dock inte helt omöjligt att Microsofts gratis-editor Visual Web Developer fungerar för ändamålet.
Mvh
Detta är inget fullfjädrat verktyg, men kanske kan hjälpa lite iaf.
sl0kMedlem sedan maj 2005562 inläggNu är inte dessa till ie .. men de bör ändå hjälpa en bra bit på vägen.. finns troligen vissa fel i din kod som ff accepterar, men som kanske ie fastnar på. När din kod går igenom venkman utan fel/varningsmeddelanden så bör det även fungera i ie.
Vid javascript utveckling/debugging använder jag följande ff extensions
Venkman Javascript Debugger (alt)
Console²
Console Filter
Hittade även en artikel om att lära sig Venkman
oskobMedlem sedan maj 20021 558 inläggTackar!
For the record: Felet var att jag glömt skriva "var" före jag defenierade en variabel.
Hur är det med var egentligen? Ska man Alltid skriva det när man skapar en variabel? Har sett att det är lite si och så med det.
var innebär att man definierar en ny variabel i det minsta "scope" som finns tillgängligt, t ex inom en funktion eller inom ett stycke som omges av måsvingar. (T ex efter en if-sats eller i en for-loop)
Om du inte använder var, och variabeln är definierad, så används den variabel som definierats i det scope som ligger närmast det scope som funktionen körs i. Om var inte används och variabelnamnet inte har definierats förut, i ett scope tillgängligt där satsen körs, så är det samma sak som att skriva window.variabelnamnet = värde;
Eller för att fatta sig kort, var definierar lokala variabler.
Pröva att lek med följande kod och ta bort var på ett eller flera ställen och se vad som händer.
<script type="text/javascript">
foo=0;
function f1(){
var foo=1;
f2();
alert("Värdet av foo i f1's scope: " + foo);
}
function f2(){
var foo=2;
alert("Värdet av foo i f2's scope: " + foo);
}
f1();
alert("Värdet av foo i det globala scopet: " + foo);
</script>
stattinMedlem sedan jan. 2005713 inlägg
oskob skrev:
Kan det vara så att Explorer räknar långa rader som 2 och att Dreamweaver inte gör det? Låter konstigt.
Nja.. jag vet inte vad Dreamweaver gör men IE läser långa rader som en rad även om raden sträcker sig över tio rader.
Och ja man borde ha någon bättre debugger. Ska också kolla på alla tipsen.
EDIT: Jag skoja bara :e (jag trodde jag hamnde fel)