استفاده از فایل های فلش

***UNIQUE***

Active Member
سلام
اول اینکه با چه Object میتونم یه فایل فلش داخل صفحات .aspx بیارم؟
و مورد بعدی اینکه من میخوام یه فایل فلش رو به عنوان هدر و منوی سایت توی تمام صفحاتم داشته باشم و طوری باشه که اگر کاربر روی لینک About کلیک کرد و صفحه About فراخوانی شد اون هدر و لینک های بالای صفحه دوباره لود نشه.
تا جایی که میدونم موقعی که درخواستی داده میشه کل صفحه به سرور فرستاده میشه و دوباره برمیگرده یعنی کل صفحه دوباره لود میشه. اکثر سایت ها منوهای بالای صفحشون که از نوع فایل فلش هم هستن موقع لود شدن دوباره صفحه انگار هیچ تغییری نمیکنه و ثابته یعنی دوباره لود نمیشه. چطوری این کارو میکنن؟ اینارو سمت کلاینت تعریف میکنن ؟ از تکنیک های خاصی استفاده می کنن؟
البته میدونم سوالم خیلی مبتدی ولی ممنون میشم راهنمایی کنید
با تشکر
 

***UNIQUE***

Active Member
یعنی هیچ کس نمیدونه چطوری میتونم یه فایل فلش رو داخل صفحه aspx بیارم !!!!!!!!!!!!!!!!!!!


یکی از دوستان لطف کردن راهنمایی کردن از فریم استفاده کنم من همینکارو کردم اما فریم فقط صفحه رو تقسیم بندی کرد ولی موقع بارگذاری اون هدر و منوهای بالای صفحه هم دوباره لود می شد. جای دیگه خوندم که باید از Ajax استفاده کنم اما فکر کنم یادگیری Ajax خیلی زمان بر باشه و فعلا" نمیشه . حالا میخوام بدونم فریم فقط همین کارو انجام میده یعنی بدون AJAX نمیشه کاری کرد که منوهای بالای صفحه ثابت باشن و موقع فشردن یه لینک فقط یه قسمت صفحه لود بشه ؟؟؟ مثل همون سایت بالا که گذاشتم.
عملکرد فریم و MasterPage مشابه هم است؟
 

zorig4fun

Member
دوسته عزيز اين سايتی که شما معرفی کرديد از فريم استفاده کرده.
اگه بالای صفحه دقت کنيد ادرس عوض نميشه فريم در واقع يک صفحه ساده ميباشد که لود ميشود و هر وقت شما روی لينک خواصی کليک ميکنيد يک قسمت از صفحه که مشخص است عوض ميشود و هيچ ربطی به ای اس پی ندارد و در فرانت پيج اينگونه صفحات را به راحتی ميتوانيد درست کنيد.
طرض کار:
يک صفحه به عنوان بالای صفحه درست کنيد.
چند صفحه ديگر که دوست داريد هم درست کنيد.
يک صفحه با فريم درست کرده و به دو قسمت يا بيشتر تقصيم کنيد
صفحه با لا را در قسمت بالا قرار دهيد
قسمت پاين را يکی از صفحات که اطلاعات ميدهد را به صورت ديفلت معرفی کنيد.
مرحله بعدی اين است که لينک های صفحه بالا را بايد تارگت را تغيير داده (العان يادم نيست که چی بايد بزاريد) که لينک در فريم باز شود.
همين موفق باشيد (در قسمت فرانت پيج يا اچ تی ام ال دوستان بيشتر ميتوانند توضيح بدن)
 

***UNIQUE***

Active Member
سلام
از راهنماییتون ممنونم :)
منوهای بالای صفحه ای که دارم روش کار می کنم یه فایل فلش هست و به هر دکمه ای یه URL داده شده تا بازش کنه توی اون فایل فلش فکر نمی کنم بشه فریم تعریف کرد یا حداقل من نمیدونم باید چطوری اینکارو کرد.
اینارو توی همون VS ویرایش کردم اما باز هم چون دکمه ها رو تغییر نداده بودم و بهشون نگفته بودم تو چه فرمی اینو باز کنه درست کار نکرد.
الان این سایت یه Template بوده . اون منوها هم یه فایل فلش هستند و URL ها در حقیقت توی فایل فلش به دکمه ها داده شده . درسته؟ اونجا چطوری تارگت و فریم تعریف کرده ؟؟؟؟
من خیلی کارم گیر کرده، هر کاری هم میکنم درست نمیشه، رو اینترنت هم گشتم مطلب یا نمونه ای در این مورد پیدا نکردم که بخونم البته توضیحاتی بود (اما نه بطور خاص برای این مدل) که طبق اونا عمل کردم اما جواب نداد.
لینک دانلود قالبی که میخوام روش اینکارو انجام بدم هم اینجا گذاشتم
کد:
http://rapidshare.com/files/23024464/10030.rar.html
ممنون میشم یا خودتون بیشتر راهنمایی کنید یا اگر نمونه ای دارید به من معرفی کنید بخونم مشکل اینو حل کنم.

با تشکر
 
آخرین ویرایش:

zorig4fun

Member
شرمنده من خودم تازه کارم ولی تا جائی که بتوانم کمک ميکنم.
به طور مثال کدهای زير را نگاه کن:

کد:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>DrZ3D Official Website</title>
</head>

<frameset rows="100,50,*">
  <frame name="top" scrolling="no" noresize target="middle" src="banner.htm">
  <frame name="middle" target="bottom" src="button.htm">
  <frame name="bottom" src="home.htm">
  <noframes>
  <body>

  <p>This page uses frames, but your browser doesn't support them.</p>

  </body>
  </noframes>
</frameset>

</html>

در اينجا من يک صفحه درست کردم که از سه قسمت درست شده است يکی برای بنر يکی برای دکمه ها و سومی برای صفحات حاوی اطلاعات.
شما برای هر کدام بايد يک صفحه مجزا درست کنيد که همه در يک صفحه نمايش داده شود.
حالا دکمه های را که در فلش درست ميکنيد بايد تارگت را اسم فريمی که ميخواهيد در ان نمايش داده شود قرار بدهيد.
همين اگه مشکلی بود باز در خدمت هستم.
 

***UNIQUE***

Active Member
سلام
کارهایی که شما گفتید رو انجام دادم اما فایل فلش دوباره لود میشه (همه دکمه ها در یه فایل فلش قرار گرفتن و آدرس رفتن به صفحات از داخل خود فایل فلش معین میشه من چطوری میتونم رویداد کلیک اون دکمه فلش رو بیارم تو صفحه خودم ؟؟ یعنی دکمه ای بصورت یه فایل فلش داشته باشم که رویداد کلیک اون رو تو صفحه خودم کنترل کنم نه تو فایل فلش) با MasterPage هم تست کردم ولی باز هم با کلیک کردن روی یکی از این دکمه ها فایل فلشم دوباره لود میشه من این فایل رو در آدرس زیر آپلود کردم.
http://rapidshare.com/files/23452689/menu.fla.html
دکمه های داخل این فایل فلش به صفحات:
index.html
index-1.html
index-2.html
index-3.html
index-4.html
index-5.html
اشاره می کنند. شما لطف کنید صفحاتی با این اسامی بسازید و بعد ببینید میشه کاری کرد که وقتی مثلا" دکمه Support رو فشار میدیم و به index3.html میره اون فایل فلش بالای صفحه دوباره لود نشه. (می خواستم کلش رو بذارم اما دیدم حجمش خیلی میشه -اما خود قالب رو توی پست های بالا گذاشتم اگه لینکش خراب شده بود و نیاز بود بگید دوباره بذارم-).
ممنون میشم راهنمایی کنید، دیگه واقعا" گیج شدم
 
آخرین ویرایش:

zorig4fun

Member
دوست عزيز فهميدم اشکال شما کجا است.
من فايل را دريافت کردم ولی نميشه اينجوری ادامه داد فقط کاری را که ميگم انجام بديد مشکل شما حل ميشه.
۱. فلشی که درست کرديد را شما در يک صفحه اچ تی ام ال قرار بدهيد
۲. يک صفحه فريم درست کنيد که از دو قسمت تشکيل شده باشد
۳. قسمت اول را صفحه فلش قرار دهيد
۴. قسمت دوم را صفحه اندکس يا ديفلت را قرار دهيد
حالا صفحه فريم شما صفحه اصلی سايت ميباشد که يک بار لود ميشود و حرگاه دکمه ای را فشار دهيد فقط قسمت دوم صفحه شما لود ميشود و قسمت اول همانگونه خواهد ماند.
حالا:
کد صفحه فريم شما (صفحه ايندکس سايت) اگر انگونه باشد:
کد:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>New Page 1</title>
</head>

<frameset rows="64,*">
  <frame name="header" scrolling="no" noresize target="main" src="نام صفحه فلش.htm">
  <frame name="main" src="نام صفحه اصلی.htm">
  <noframes>
  <body>

  <p>This page uses frames, but your browser doesn't support them.</p>

  </body>
  </noframes>
</frameset>

</html>
بنا بر اين در فلشی که درست ميکنيد بايد اسکريپت دکمه ها را انگونه بنويسيد:
کد:
on (release) {
getURL("نام صفحه ای که ميخواهيد لود شود
.htm","main");
}
اميدوارم خودت مشکل را حل کنی اگه نشد لطفا با ايميل فايلها را برام بفرست تا خودم درستش کنم. [email protected]
 

m_ziba

Member
اکثر سایت ها منوهای بالای صفحشون که از نوع فایل فلش هم هستن موقع لود شدن دوباره صفحه انگار هیچ تغییری نمیکنه و ثابته یعنی دوباره لود نمیشه. چطوری این کارو میکنن؟ اینارو سمت کلاینت تعریف میکنن ؟ از تکنیک های خاصی استفاده می کنن؟

دوست من! اکثر سایت ها از هیچ تکنیکی استفاده نمی کنن!

مساله ای که هست برمی گرده به ISP
ISP ها چون bandwidth پایین دارند فایل های flash رو cash می کنن.

به زبان ساده بهتون بگم که یک فایل flash تنها اولین بار که در ISP مربوطه توسط اولین کاربر که از اون اینترنت خریده load می شه! بعد دیگه کش می شه و برای کاربران بعدی دو سوت load می شه.
( تا زمانی که ISP، کش رو دوباره پاک کنه)
 

nima_dir

Active Member
سلام
موقعي كه از يه فايل فلش اسفاده ميشه موضوع دانلودشه يعني اگه حجمش بالا بره خوب دانلودشم طول ميكشه قرار گرفتنش توي كش فكر نكنم به اين اندازه فرق كنه كه سه سوت بشه.
ممكنه در اين زمينه يكم توضيح بدين
 

zorig4fun

Member
دوستان مشکل حل شده
اگه دقت کرده باشيد طرض سوال کردن اشتباه بوده منضور از لود شودن فلش اين بوده که اگه دقت کرده باشيد فلش ايشون يک لودر داره که اول لود ميشه بعد اجزای مختلف مانند فيلم در کنار هم قرار ميگيرند. ايشون ميخواستند که اين حرکت فقط يک بار انجام شود و هر وقت کاربر وارد صفحه جديد ميشود دوباره فلش از اول پلی نکند.
که مشکل با استفاده از فريم حل شد.
 

nima_dir

Active Member
سلام دوست عزيز
دو تا غلط ميشين 18
من مشكلي با اون سوال نداشتم فقط اين نكته اي كه مدير محترم فرمودن رو ميخواستم بيشتر توضيح بدن
 

***UNIQUE***

Active Member
سلام
مشکلی که در این تاپیک مطرح کردم با کمک اساتید در صفحات htm حل شد. اما در aspx نمیدونم چطوری همین کار رو (ثابت ماندن قسمتی از صفحه) انجام بدم، fه پیشنهاد اساتید رفتم سراغ AJAX.
من یه پروژه جدید ASP.NET AJAX-Enabled WebSite باز کردم و یه MAsterPage ایجاد کردم و فایل فلش رو داخل صفحه MasterPage گذاشتم و دو صفحه aspx هم ایجاد کردم که هر دو تاشون از این مسترپیج استفاده می کردن، اما وقتی مثلا" از صفحه Default.aspx به Default1.aspx میرم کل صفحه دوباره لود میشه!!!. مگه از قابلیت های تکنولوژی AJAX این نیست که قسمت هایی از صفحه که لازمه دوباره بارگذاری میشه و قسمت های بدون تغییر ثابت باقی می مانند؟
نمیدونم من درست متوجه نشدم یا دارم یه جایی رو اشتباه میرم که جواب نمیده
میدونم شاید سوالم خیلی ساده باشه ولی حسابی کارم گیر کرده . هر راهی هم به ذهنم می رسید امتحان کردم تمام Sample هایی هم که داشتم زیر و رو کردم ما به نتیجه ای نرسیدم.ممنون میشم راهنمایی کنید
 

nima_dir

Active Member
سلام
ممكنه لطف كنين و كد برنامه رو بذارين چون اون نوع صفحه اي كه شما انتخاب كردين بدون كد نوبيسي براي اي جكس كار نميكنه
ممنون
 

***UNIQUE***

Active Member
از راهنماییتون ممنون
کد صفحه MasterPage رو بذارم؟
من درست متوجه نشدم، میتونم بپرسم منظورتون چیه بدون کد نویسی کار نمیکنه ؟
 

nima_dir

Active Member
سلام
يعني براي اينكه از اي جكس استفاده بشه بايد كد بنويسين (كه جداي از كد اصلي صفحات هس)
اگه لطف كنين كد كل صفحه رو ميل بزنين
 

m_ziba

Member
اگه دقت کرده باشيد طرض سوال کردن اشتباه بوده منضور از لود شودن فلش اين بوده که اگه دقت کرده باشيد فلش ايشون يک لودر داره که اول لود ميشه بعد اجزای مختلف مانند فيلم در کنار هم قرار ميگيرند. ايشون ميخواستند که اين حرکت فقط يک بار انجام شود و هر وقت کاربر وارد صفحه جديد ميشود دوباره فلش از اول پلی نکند.

من مشكلي با اون سوال نداشتم فقط اين نكته اي كه مدير محترم فرمودن رو ميخواستم بيشتر توضيح بدن

مشکلی که zorig4fun بیان کرده دقیقاً با cache حل می شه. حالا اگه می خواین قبول نکنید من اصراری ندارم.
در مورد download باید بگم که این مساله وقتی طول می کشه که انتقال از سرور اصلی سایت به کامپیوتر شما منتقل می شه که چون اکثر ISP های فعلا در ایران BandWidth پایین دارن این طول می کشه. اما اونها این مشکل رو با cache کردن یک page یا قسمتی از اون (عکس ها، ...) سعی کردن مرتفع کنن.
انتقال از ISP به کامپیوتر شما وقتی که فیلی رو download می کنید به مراتب سریع تر انجام می شه.

بدی cache اینه که اگه سایت update شده باشه، شما تغییرات جدید رو تا کش پاک نشه نمی بینید.
 

جدیدترین ارسال ها

بالا