•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the JavaScript / DHTML / AJAX section within the Web Development category of DaniWeb, a massive community of 374,612 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 2,397 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our JavaScript / DHTML / AJAX advertiser: Lunarpages Web Hosting
Views: 1103 | Replies: 5
![]() |
•
•
Join Date: Oct 2006
Posts: 7
Reputation:
Rep Power: 0
Solved Threads: 0
Hello All,
I have a javascript image preloading script I'm writing, and it basically creates an array called "array_name" which contains the image filenames, and then uses a for loop to assign "array_name"'s elements to another array called "preload". I know my syntax is good, but the firefox javascript inspector is complaining each time I attempt to run this. Can anyone take a look at the code, and tell me what I'm doing wrong?
Thank You
I have a javascript image preloading script I'm writing, and it basically creates an array called "array_name" which contains the image filenames, and then uses a for loop to assign "array_name"'s elements to another array called "preload". I know my syntax is good, but the firefox javascript inspector is complaining each time I attempt to run this. Can anyone take a look at the code, and tell me what I'm doing wrong?
Thank You
javascript Syntax (Toggle Plain Text)
function imgLoad() { array_name=[]; preload=[]; array_name[0]='images/bgcolor.gif'; array_name[1]='images/blackdot.gif'; array_name[2]='images/bold.gif'; array_name[3]='images/centre.gif'; array_name[4]='images/copy.gif'; array_name[5]='images/cut.gif'; array_name[6]='images/email.gif'; array_name[7]='images/hr.gif'; array_name[8]='images/hyperlink.gif'; array_name[9]='images/image.gif'; array_name[10]='images/indent.gif'; array_name[11]='images/insert_table.gif'; array_name[12]='images/italic.gif'; array_name[13]='images/justifyfull.gif'; array_name[14]='images/left_just.gif'; array_name[15]='images/list.gif'; array_name[16]='images/numbered_list.gif'; array_name[17]='images/outdent.gif'; array_name[18]='images/paste.gif'; array_name[19]='images/redo.gif'; array_name[20]='images/right_just.gif'; array_name[21]='images/smiley.gif'; array_name[22]='images/spellcheck.gif'; array_name[23]='images/textcolor.gif'; array_name[24]='images/underline.gif'; array_name[25]='images/undo.gif'; for (var i = 0; i < array_name.length; i++) { var preload[i] = new Image(); preload[i].src = array_name[i]; } }
•
•
Join Date: Jul 2006
Location: Deptford, London
Posts: 916
Reputation:
Rep Power: 5
Solved Threads: 46
try replacing:
with:
What is the error produced?
array_name=[]; preload=[];
array_name= new Array(); preload=new Array();
What is the error produced?
If it only works in Internet Explorer; it doesn't work.
•
•
Join Date: Oct 2006
Posts: 7
Reputation:
Rep Power: 0
Solved Threads: 0
•
•
•
•
try replacing:
with:array_name=[]; preload=[];
array_name= new Array(); preload=new Array();
What is the error produced?
The error thats produced is:
missing ; before statement
var preload[i] = new Image();
imgarray.js (line 31)
Though honestly, I think I'm going to ignore this error. I just noticed that the firefox javascript inspector reports no errors with it, however "Firebug" (an extension I have installed) found error with it. If you see something I'm doing wrong, or something that's bad style which would cause Firebug to spit out errors, feel free to let me know, otherwise I'm gonna consider this problem "solved".
Last edited by {-_-} : Nov 29th, 2006 at 3:34 pm. Reason: had to add more
•
•
Join Date: Jul 2006
Location: Deptford, London
Posts: 916
Reputation:
Rep Power: 5
Solved Threads: 46
ha... the only thing i can think is:
but hey, i've never seen that last ; put in, and it shouldn't (doesn't need to) be put in really...
EDIT: Actually, this seems wrong/uneccessary:
preload[i] is already indirectly "var'd" when you make the array.
for (var i = 0; i < array_name.length; i++;) {
var preload[i] = new Image();
preload[i].src = array_name[i];
}EDIT: Actually, this seems wrong/uneccessary:
var preload[i] = new Image(); Last edited by MattEvans : Nov 29th, 2006 at 4:41 pm.
If it only works in Internet Explorer; it doesn't work.
•
•
Join Date: Jul 2006
Location: Deptford, London
Posts: 916
Reputation:
Rep Power: 5
Solved Threads: 46
thats not a local variable; you are assigning index "i", of the inherited scope/routine scope/public scope array "preload" to reference a new Image object, which is automatically var'd and scoped by that assignment (infact, you'll find that Image isn't accessible by any scope; its scope sort of disapears, and it can only be accessed through the array)
If you were doing this:
then you'd need (or should use) the var.
If you were doing this:
for (var i = 0; i < array_name.length; i++) {
var thisImage = new Image();
thisImage.src = array_name[i];
preload[i] = thisImage;
}then you'd need (or should use) the var.
Last edited by MattEvans : Nov 29th, 2006 at 5:02 pm.
If it only works in Internet Explorer; it doesn't work.
![]() |
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
•
•
•
•
•
•
•
•
DaniWeb JavaScript / DHTML / AJAX Marketplace
- nested for loop problem (Java)
- Simple script loop question (Shell Scripting)
- Calculus chat? (Computer Science and Software Design)
- Winsock Multi-Client Servers (C++)
Other Threads in the JavaScript / DHTML / AJAX Forum
- Previous Thread: null is null or not an object error. No menus work
- Next Thread: Javascript syntax '' within '' (simple question)


Linear Mode