ورود

نسخه کامل مشاهده نسخه کامل : راهنمایی: مشکل در کد جاوا اسکریپت



Smafias
09-11-2008, 03:51
سلام! :20:

یه کد نوشتم برای حرکت دادن یه عکس - ولی مشکل داره.

یعنی وقتی مستقیم آیدی رو به تابع پاس میدم درست کار میکنه ولی وقتی از this استفاده میکنم ارور میده...


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ممنون میشم اگه بگید بره چی ارور میده.
سپاسگزارم!
موفق باشید :11:

as13851365
10-11-2008, 11:42
مشکل شما بيشتر مربوط به نحويه فرخواني تابع مي باشد شما براي اولين بار تابع رو با ارسال يک پارامتر فراخوني مي کنيد ولي براي دفعه بعد براي فرخواني تابع از دستور timer استفاده مي کنيد که هيچ پارامتري رو برايش ارسال نمي کنيد

من کد شما رو به صورت زير تغيير دادم

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

در ضمن بهتر است بعد از اين که کارتان با دستور timer تمام شد تايمر رو پاک کنيد تا بيخودي پردازش نکنه !.

Smafias
11-11-2008, 21:37
ممنون از اینکه پاسخ دادین! :11:

---
یه سوال دیگه: چرا وقتی میخوایم left یه image رو بگیریم مقدار خالی برمیگردونه؟
مثال:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

البته فکر کنم باید قبلش اینا init بشه -- مثلا:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ولی مشکل اینه که من توی صفحه ای که کار میکنم align-center هست و image وسط صفحه قرار میگیره.
برام مهمه که x رو بدست بیارم! راهی هست؟

متشکر و سپاسگزارم :11:

LIYAMM
12-11-2008, 11:41
با سلام.
چند مشکل درباره طراحی وب داشتم.
میتونم ازتون کمک بخوام

eAmin
12-11-2008, 12:07
ممنون از اینکه پاسخ دادین! :11:

---
یه سوال دیگه: چرا وقتی میخوایم left یه image رو بگیریم مقدار خالی برمیگردونه؟
مثال:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

البته فکر کنم باید قبلش اینا init بشه -- مثلا:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ولی مشکل اینه که من توی صفحه ای که کار میکنم align-center هست و image وسط صفحه قرار میگیره.
برام مهمه که x رو بدست بیارم! راهی هست؟

متشکر و سپاسگزارم :11:
سلام.

باید از parseInt استفاده کنی، البته همونطور که خودت هم گفتی باید از قبل مقدار left یا x مقداردهی شده باشه.

Smafias
13-11-2008, 03:38
باید از parseInt استفاده کنی، البته همونطور که خودت هم گفتی باید از قبل مقدار left یا x مقداردهی شده باشه.

این که جواب نشد امین جان! :دی

خوب میگم من اگه نخوام که از قبل مقداردهی کنم چی؟
آخه static نسیت که بدونم چه x ی بهش بدم!! -- عکس وسط صفحه قرار میگیره به خاطر align-center و میخوام xش رو بگیرم!
راه دیگه ای؟

eAmin
13-11-2008, 11:23
این که جواب نشد امین جان! :دی

خوب میگم من اگه نخوام که از قبل مقداردهی کنم چی؟
آخه static نسیت که بدونم چه x ی بهش بدم!! -- عکس وسط صفحه قرار میگیره به خاطر align-center و میخوام xش رو بگیرم!
راه دیگه ای؟
سلام.

گرفتم چی شد!
این یکی باید جواب بده:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

Smafias
19-11-2008, 20:36
دسست درد نکنه امین جان! خیلی کارت درسته.

یه مشکل دیگه هم میمونه و اون اینه که چطور میشه که تابع تکرار نشه یعنی حلقه داخل تابع باشه نه اینکه تابع رو تکرار کنه!
در اینجا:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

وقتی به این خط میره:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
باعث میشه که دوباره حلقه بره و از تابع شروع کنه!
حالا چطور میشه از یه راه دیگه رفت که حلقه داخل تابع اجرا بشه؟

as13851365
20-11-2008, 08:59
ببخشید شما کدام حلقه رو می گید ؟
اگر داخل تابع move_me شما از یک حلقه استفاده کردید و می خواهید این حلقه فقط یک بار اون هم برای اولین فراخوانی اجرا بشه خوب می تونی از یک پارامتر براش استفاده کنی .

یعنی برای اولین بار تابع رو با پارامترهای زیر فراخوانی کن

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
این هم خود تابع :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ولی اگر منظورت چیزه دیگری است خواهشا کمی واضحتر بگو

Smafias
21-11-2008, 05:13
خودمم نمیدونم :دی
آخه نمیدونم چطوری بگم. منظورم از حلقه اون جور حلقه نیست که. منظورم تکراره!

ببین تابع رو اجرا میکنیم وقتی که این خط اجرا میشه:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

بعدش توی تابع وقتی به این خط میرسه:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
باعث میشه که دوباره بریم به اول تابع و یه سری init ها دوباره انجام شن مثل ss=e . ولی ما نمیخوایم اینا دوباره اجرا شن.
یعنی نمیخوایم از حلقه ی if :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
خارج شیم و بریم به اول تابع!

میخوام توی همون داخل تابع اجرا شه.

امیدوارم منظورمو گرفته باشی.
شایدم راهی برای این کار نباشه!!؟

Smafias
20-12-2008, 22:00
سلامی دوباره به شما

همونطور که مشاهده میکنید تاریخ آخرین پست تاپیک (پست خودم) مربوطه به 11-21-2008 یعنی فردا درست میشه یک ماه فاصله با این پست!!!!
مدیریت (آقا نیما) لطف کردن اجازه دادن که اینجا یه پست بزنم که تاپیک بیاد بالا.

من 99% مطمئنم که تاپیکم به خاطر شلوغی رفته پایین و بی نتیجه مونده. وگرنه بالاخره یکی پیدا میشد یه جوابی چیزی...

لطفا درباره مسئله ی پست بالایی (10#) راهنمایی بفرمایید. اگر راهی هست بگید اگر هم نیست بازم بگید که من از این بلاتکلیفی نجات پیدا کنم.

متشکرم :11: