PDA

نسخه کامل مشاهده نسخه کامل : ساخت اسکین برای سایت یا قسمتی از آن



David.Jn
03-08-2008, 19:12
سلام من میخوام برایم سایتم یا قسمتی از آن امکان انتخاب اسکین برای کاربر بدم

یه چیز مثل یاهو نمیدونم هنوز این امکان را داره یا نه منظورم اونیه که کاربر میومد با انتخاب یک گزینه یه جعبه رنگ باز میشد و کاربر میتونست رنگ مورد علاقشو برای them سایت انتخاب کنه.

خودم این ایده به ذهنم رسید که بیایم چند تا فایل css بزارم و این فایلها رو به صفحه ضمیمه کنم وقتی کاریر روی یک گزینه که مبنی بر انتخاب اسکین هست کلیک کنه یکی از این فایلها به عنوان فایل مرجع انتخاب بشه.(نمیدونم ایده خوبیه یا نه) حالا نمیدونم چطوری این امکان را قرار بدم که هر بار یکی از این فایلها انتخاب بشه.!

دوستان اگه نظر بهتری دارن ، بگن.
ممنون

neopersia
03-08-2008, 21:14
استفاده از چند تا فایل css فکر بدی نیست. میشه قسمتهای مشترک رو تو یه فایل جدا بزاری و بقیه رو بر اساس انتخاب کاربر نمایش بدی. یه فایل پیش فرض هم در نظر بگیر.
برای اینکه مشخص بشه کدوم فایل css انتخاب بشه میتونی از کوکی ها استفاده کنی. یا اگه کاربران سایت حساب کاربری دارن تو حساب کاربریشون ذخیره کنی.
به نظر من بهتره کوکی ها رو تو سرور بخونی و استایل مورد نظر رو تو صفحه قرار بدی.

David.Jn
03-08-2008, 23:20
فایل پیش فرض را که باید در نظر بگیرم.

درست متوجه نشدم
تا اینجاشو فهمیدم یعنی میگی با کلیک بر روی یکی از این اسکین ها یه کوکی برای کاربر ذخیره بشه
با اینجاش مشکل دارم که این عملیات زمانی اتفاق میفته که کاربر دوباره صفحه رو refresh کنه اونوقت اون کوکی خونده میشه و استایل مورد نظر کاربر برایش نمایش داده میشه ولی من میخوام همون لحظه عوض بشه و برای کاربر نمایش داده بشه.(شاید من منظورتو درست متوجه نشدم).

خودم این به نظرم رسید که بیام با java script یه switch case بزنم و در اونجا یکی از این فایلها را انتخاب کنم نمیدونم عملی میشه یا نه ولی این مشکل را دارم که نمیدونم چه جوری بهش بفهمونم که وقتی رو فلان گزینه کلیک کرد یکی از اون فایلهایی که ضمیمه کردم را به عنوان مرجع (برای استایلها) انتخاب کنه.

ضمنآ نظر شما را هم حتمآ به کار می بندم که یک کوکی برای کاربر ذخیره کنم و تو مراجعات بعدی them یا اسکین مورد علاقش را بهش نشون بده

امیدوارم این بحث نتیجه بده و یه آموزش هم باشه تا برنامه نویسا بتونن تا حدی وبسایتشون را کاربر پسند کنند.

neopersia
04-08-2008, 05:10
من آخرین دفعه ای که سایت یاهو رو دیدم یادم نیست کی بود :31: تو msn همچین چیزی دیده بودم.

اگر بخوای صفحه رفرش نشه باید با جاوا اسکرپت انجامش بدی باید همه css ها رو همیشه لود کنی
یه راه حل که الان به ذهنم میرسه اینه که المنتهایی رو که قراره ظاهر متفاوت داشته باشن تو یک div با یک کلاس مشخص (پیشفرض) قرار بدیم و استایل المنتها رو با قید این div بنویسیم. بعد با انتخاب رنگهای مختلف از طرف کاربر کافیه کلاس اون div رو عوض کنیم تا کل المنتهای تو اون استایلشون عوض شه.
اگر گنگ توضیح دادم بگید تا مثال بزنم.

احتمالاً راههای دیگه ای هم هست ولی فعلاً چیز دیگه ای به ذهنم نمیرسه. بقیه دوستان، نظری پیشنهادی؟...

David.Jn
04-08-2008, 09:32
اگر گنگ توضیح دادم بگید تا مثال بزنم.

یه مثال بزن.
نظرت با پست شماره 3 چیه؟
بزار بازترش کنم کلاسهایی که تو فایلهای css قراره بزاریم همه یک نام باشند منظورم اینه که اگه 10 تا کلاس تو یه فایل داشتیم تو فایل بعدی هم 10 تای دیگه تکرار میشن ولی خصوصیاتشون کاملآ متفاوت باشه.
برای مثال اینو نگاه کنین.

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

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

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
دوستان دیگه هم بیان نظرات و ایده های خودشون را بگن ممنون میشیم.

neopersia
04-08-2008, 19:32
من فکر میکردم چون css توی head لود میشه اگر بعد از لود شدن صفحه فایل css عوض بشه تءثیری نداره ولی الان که تست کردم دیدم کار میکنه!
اینجوری کار راحت میشه. با استفاده از جاوا اسکرپت میشه href مربوط به فایل اسکین رو عوض کرد. اینجوری ظاهر صفحه هم عوض میشه. (تا اینجا برای تغییر اسکین بدون رفرش شدن صفحه):

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کد مربوط به نوشتن کوکی اسکین رو هم میشه توی تابع Change_Skin اضافه کرد.
در بازدیدهای بعدی هم میشه توی سرور کوکیها رو چک کرد و فایل مناسب رو به صفحه ضمیمه کرد.

David.Jn
04-08-2008, 22:36
یاسر جان حله.
خودشه مشکل فقط لود کردن فایلها بود.