הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 17-04-06, 17:15   # 1
Homie
Permanently Banned
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 38
הודעות: 287

Homie לא מחובר  

[שאלה -Javascript] מה לא תקין בקוד הרנדומלי?

שלום לכל המשתמשים היקרים,

לפני דקות ספורות יצרתי לי סקריפט שמציג לוגו רנדומלי.

אבל למרות זאת, הוא אינו מציג את הלוגו כראוי.

הקוד:
HTML קוד:
var logo = new Array()

logo[1] = '/style/logos/logo1.swf'
logo[2] = '/style/logos/logo2.swf'
logo[3] = '/style/logos/logo3.swf'
logo[4] = '/style/logos/logo4.swf'

var j = 0
var p = logo.length;

var preBuffer = new Array()
for (i = 0; i < p; i++){
   preBuffer[i] = new Image()
   preBuffer[i].src = logo[i]
}

var whichLogo = Math.round(Math.random()*(p-1));
function showLogo(){
document.write('<object classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" id="obj1" ');
document.write('codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" ');
document.write('border="0" width="780" height="161">');
document.write('"<param name="movie" value="+logo[whichLogo]+">');
document.write('<param name="quality" value="High">');
document.write('<embed src="+logo[whichLogo]+" ');
document.write('pluginspage="http://www.macromedia.com/go/getflashplayer" ');
document.write('type="application/x-shockwave-flash" name="obj1" width="780" ');
document.write('height="161" quality="High"></object>');
}

showLogo();
מה הבעיה פה?

כשהלוגו מוצג, רואים רק לבן, וכתוב Movie not loaded, מה לא נטען? אני גם ניסיתי קישור מלא.

תודה מראש, אלי.

(חזרתי מהטיול)

עריכה: ניסיתי ככה:
HTML קוד:
var Logo = new Array()

Logo[1] = "/style/logos/logo1.swf";
Logo[2] = "/style/logos/logo2.swf";
Logo[3] = "/style/logos/logo3.swf";
Logo[4] = "/style/logos/logo4.swf";

var L = Logo.length;
var whichLogo = Math.round(Math.random()*(L-1));
function showLogo(){
document.write('<object classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" id="obj1" ');
document.write('codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" ');
document.write('border="0" width="780" height="161">');
document.write('"<param name="movie" value="+Logo[whichLogo]+">');
document.write('<param name="quality" value="High">');
document.write('<embed src="+Logo[whichLogo]+" ');
document.write('pluginspage="http://www.macromedia.com/go/getflashplayer" ');
document.write('type="application/x-shockwave-flash" name="obj1" width="780" ');
document.write('height="161" quality="High"></object>');
}

showLogo();
וגם לא עובד, אין שגיאת JS, אבל הלוגו לא מוצג, רואים רק לבן..

תודה מראש.

Last edited by Homie; 17-04-06 at 17:34..
  Reply With Quote
ישן 17-04-06, 21:55   # 2
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

HTML קוד:
document.write('"<param name="movie" value="+Logo[whichLogo]+">');
איפה מצויין המשתנה Logo['whichLogo']?
זה whichLogo ולא מערך במשתנה Logo...

אותה טעות גם בקוד הראשון.

עריכה:
אני חושב שהבנתי.
אתה רוצה לקרוא ללוגו שהמפתח שלו הוא whichLogo..
אממ.. תנסה להפוך את whichLogo לקטע במערך עצמו.. זאת אומרת להפוך אותו לLogo לעשות השמה לתוך whichLogo
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter

Last edited by BlueNosE; 17-04-06 at 21:59..
  Reply With Quote
ישן 17-04-06, 23:00   # 3
Homie
Permanently Banned
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 38
הודעות: 287

Homie לא מחובר  

ציטוט:
נכתב במקור על ידי BlueNosE
HTML קוד:
document.write('"<param name="movie" value="+Logo[whichLogo]+">');
איפה מצויין המשתנה Logo['whichLogo']?
זה whichLogo ולא מערך במשתנה Logo...

אותה טעות גם בקוד הראשון.

עריכה:
אני חושב שהבנתי.
אתה רוצה לקרוא ללוגו שהמפתח שלו הוא whichLogo..
אממ.. תנסה להפוך את whichLogo לקטע במערך עצמו.. זאת אומרת להפוך אותו לLogo לעשות השמה לתוך whichLogo
הבנתי, אבל זה עדיין לא מערך במשתנה.

עומר, יש לך מושג איך לתקן את זה? זה קצת דחוף.

תודה מראש.
  Reply With Quote
ישן 18-04-06, 00:52   # 4
MasterNir
חבר פורום
 
מיני פרופיל
תאריך הצטרפות: Apr 2006
גיל: 36
הודעות: 122
שלח הודעה באמצעות ICO אל MasterNir שלח הודעה באמצעות MSN אל MasterNir

MasterNir לא מחובר  

קוד:
var whichLogo = Math.round(Math.random()*(L-1));
אמור להיות חילוק, לא כפל...
ככה:
קוד:
var whichLogo = Math.round(Math.random()/(L-1));
היגיון, יש לך מספר לא ידוע (random), נסמן ב-y, ואתה רוצה שייכנס לטווח בין 0 ל-X... אם תכפיל את y (בהנחה שהוא שלם וחיובי [במילים אחרות גדול מ-1]) ב-x תקבל תוצאה הגדולה מ-x ומ-y.
אתה צריך לחלק, רמז לכך יכול להיות round שמטרתה לעגל (כפל של שני מספרים שלמים יתן שלם, חילוק לעומת זאת יכול להחזיר מספר עשרוני) ולמעשה במקרה של כפל הפונקציה מיותרת, בעוד שבמקרה של חילוק היא נחוצה.
__________________
ניר, מתכנת PHP מקצועי עם ידע ויכולות מוכחות.

צור קשר:
MSN Messanger: MasterNir@gmail.com
E-mail: MasterNir@gmail.com
ICQ #: 171963672
  Reply With Quote
ישן 18-04-06, 06:46   # 5
Homie
Permanently Banned
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 38
הודעות: 287

Homie לא מחובר  

ציטוט:
נכתב במקור על ידי MasterNir
קוד:
var whichLogo = Math.round(Math.random()*(L-1));
אמור להיות חילוק, לא כפל...
ככה:
קוד:
var whichLogo = Math.round(Math.random()/(L-1));
היגיון, יש לך מספר לא ידוע (random), נסמן ב-y, ואתה רוצה שייכנס לטווח בין 0 ל-X... אם תכפיל את y (בהנחה שהוא שלם וחיובי [במילים אחרות גדול מ-1]) ב-x תקבל תוצאה הגדולה מ-x ומ-y.
אתה צריך לחלק, רמז לכך יכול להיות round שמטרתה לעגל (כפל של שני מספרים שלמים יתן שלם, חילוק לעומת זאת יכול להחזיר מספר עשרוני) ולמעשה במקרה של כפל הפונקציה מיותרת, בעוד שבמקרה של חילוק היא נחוצה.
לא עובד

תוכל בבקשה להביא לי את הקוד כולו מתוקן.

והבנתי מה הבעיה פחות היותר, הוא לא לוקח את ה-+Logo[whichLogo]+

יעני בדקתי במקור של העמוד HTML, ואני רואה שהוא קורא לשם של הקובץ:
HTML קוד:
+Logo[whichLogo]+.swf
  Reply With Quote
ישן 18-04-06, 14:31   # 6
MasterNir
חבר פורום
 
מיני פרופיל
תאריך הצטרפות: Apr 2006
גיל: 36
הודעות: 122
שלח הודעה באמצעות ICO אל MasterNir שלח הודעה באמצעות MSN אל MasterNir

MasterNir לא מחובר  

אה, לא שמתי לב לזה קודם... אתה אמור להוסיף ' לפני הפלוס הראשון ואחרי הפלוס השני, לשרשר את המשתנה של הלוגו לשני מחרוזות (לפניו ואחריו).

לדוגמה את השורה הזאת:
HTML קוד:
document.write('"<param name="movie" value="+Logo[whichLogo]+">');
אתה אמור לשנות שתראה ככה:
HTML קוד:
document.write('"<param name="movie" value=" ' +Logo[whichLogo]+ ' ">');
בהצלחה
__________________
ניר, מתכנת PHP מקצועי עם ידע ויכולות מוכחות.

צור קשר:
MSN Messanger: MasterNir@gmail.com
E-mail: MasterNir@gmail.com
ICQ #: 171963672
  Reply With Quote
ישן 18-04-06, 17:12   # 7
Homie
Permanently Banned
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 38
הודעות: 287

Homie לא מחובר  

ציטוט:
נכתב במקור על ידי MasterNir
אה, לא שמתי לב לזה קודם... אתה אמור להוסיף ' לפני הפלוס הראשון ואחרי הפלוס השני, לשרשר את המשתנה של הלוגו לשני מחרוזות (לפניו ואחריו).

לדוגמה את השורה הזאת:
HTML קוד:
document.write('"<param name="movie" value="+Logo[whichLogo]+">');
אתה אמור לשנות שתראה ככה:
HTML קוד:
document.write('"<param name="movie" value=" ' +Logo[whichLogo]+ ' ">');
בהצלחה
שוב לא מציג את הלוגו,

הוא שינה את שם הלוגו ל-undefined.

....

Last edited by Homie; 18-04-06 at 17:36..
  Reply With Quote
ישן 18-04-06, 18:05   # 8
MasterNir
חבר פורום
 
מיני פרופיל
תאריך הצטרפות: Apr 2006
גיל: 36
הודעות: 122
שלח הודעה באמצעות ICO אל MasterNir שלח הודעה באמצעות MSN אל MasterNir

MasterNir לא מחובר  

תעשה document.write ל-whichLogo ותכתוב מה התוצאה...
__________________
ניר, מתכנת PHP מקצועי עם ידע ויכולות מוכחות.

צור קשר:
MSN Messanger: MasterNir@gmail.com
E-mail: MasterNir@gmail.com
ICQ #: 171963672
  Reply With Quote
ישן 18-04-06, 18:20   # 9
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

וואלה שמתי לב למשהו לא בסדר בשורה ולא הבנתי מה אז חשבתי שזה הקריאה למשתנה..
חח
אממ, אני לא ממש מבין.
HTML קוד:
var whichLogo = Math.round(Math.random() / (L-1));
נניח שקיבלנו את המספר.. 63.
L שווה ל4. L-1 שווה ל3.
אוקיי, מבצע:
63 / 3
נותן 21.
כלומר יקרא לLogo[21].
לא נדמה לי שקיים..
עדיף כבר לעשות פונקצייה רנדומלית שבוחרת מספרים בטווח של בין 0 ל3..
לא זוכר אותה כרגע מצטער אני יכול לחפש באיציק1 (סט אפ.. שכחתי.. S: )
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 23:15.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ