کاملترین اسکریپت فارسی نویسی

شروع موضوع توسط arinolan ‏6 ژانویه 2008 در انجمن ابزار و کدهای آماده PHP

  1. arinolan

    arinolan Member

    ارسال‌ها:
    76
    تشکر شده:
    28
    امتیاز دستاورد:
    6
    اسکریپت‌هایی که در حال حاضر برای اضافه کردن امکان تایپ فارسی در فرم‌های وب مورد استفاده قرار می‌گیرند، دارای ۲ مشکل هستند:

    اول اینکه بخاطر استفاده از رویدادهای onkeypress یا onclick یا... و اینکه این رویداد/خصوصیت‌ها دیگر در استانداردهای وب جایی ندارند، نمی‌توان صفحاتی که امکان تایپ فارسی را در آنها قرار داده‌ایم، استاندارد کنیم.

    مشکل دوم اینکه تنظیم این امکانات با توجه به کارهایی که باید انجام شود، می‌تواند گیج کننده باشد.

    به همه‌ی اینها باید اضافه کرد این نکته را که اکثر اسکریپت‌هایی که در حال حاضر مورد استفاده قرار می‌گیرند، باگ‌های فراوانی دارند. مثلا به صفحه عضویت پرشین‌بلاگ - به عنوان یک سایت معتبر (احتمالا!) - نگاه کنید: فیلد "نام کاربر" را انگلیسی کنید سپس در فیلد "عنوان وبلاگ" چیزی تایپ کنید. می‌بینید که به‌جای فارسی، کاراکترهای انگلیسی تایپ می‌شوند! یعنی همه‌ی فیلدها همزمان یا انگلیسی هستند یا فارسی اما دکمه‌های تغییر زبان همزمان تغییر نمی‌کنند و ممکن است دکمه، تایپ در حالت فارسی را نشان دهد اما انگلیسی تایپ شود!!!!! (البته حل مشکل این اسکریپت بسیار ساده است اما متاسفانه ما آدم‌های بنداز و در رویی هستیم!)

    برای اینکه کار را راحت‌تر کنیم، استاندارد بمانیم و باگ نداشته باشیم(!!!!)، اسکریپت تایپ فارسی را جور دیگری بازنویسی کردم!
    این سکریپت در Internet Explorer و خانواده‌ی GECKO (یعنی Mozilla/FireFox) و همچنین Opera بدرستی و کاملا یکسان کار می‌کند! ضمن اینکه استفاده از آن بسیار ساده است، به استاندارد بودن صفحات لطمه‌ای نمی‌زند، باگ هم ندارد(امیدوارم!!!).
    Basic Usage

    استفاده از این اسکریپت فقط ۱+۲ مرحله دارد:

    ۰. متغیرهای ShowChangeLangButton، KeyBoardError و ChangeDir را براساس نظر خود مقدار دهی کنید:
    ShowChangeLangButton: نمایش دکمه تعییر زبان: 0: نمایش و 1: عدم نمایش
    KeyBoardError: در صوتی که کیبرد کاربر در حالت تایپ فارسی بود: 0: غیرفعال کردن FarsiType و 1: نمایش پیغام خطا
    ChangeDir: تغییر جهت نمایش متن هنگام تغییر زبان: 0: بدون واکنش، 1: تغییر کند و 2: تنظیم یک دکمه برای تغییر Direction

    ۱. فایل farsitype.js را به صفحات مورد نظر الحاق کنید! (داخل تگ <head>)
    کد (Text):

        <script language="javascript" src="farsitype.js" type="text/javascript"></script>
     
    ۲. به شناسه lang هرکدام از تگ‌های <input> یا <textarea> که می‌خواهید دارای امکان تایپ فارسی باشند، مقدار "fa" یا "fa-IR" بدهید! (فقط lang="fa" یا lang="fa-IR" برای این اسکریپت دارای اهمیت است!)
    کد (Text):

        <input type="text" name="whatever" lang="fa" />
        <textarea cols="30" rows="7" name="whatever" lang="fa"></textarea>
        <input type="text" name="whatever" lang="fa-IR" />
        <textarea cols="30" rows="7" name="whatever" lang="fa-IR"></textarea>
     
    تموم شد! اسکریپت به طور خودکار دکمه‌ی تغییر زبان را ایجاد می‌کند، سایر کارهای مورد نیاز را نیز انجام می‌دهد!

    می‌توانید برای فعال/غیرفعال کردن سکریپت از یک چک‌باکس استفاه کنید وجود این چک‌باکس اختیاری‌ست:
    کد (Text):

        <input type="checkbox" id="disableFarsiType" />
     
    در این اسکریپت می‌توانید علاوه بر دکمه تغییر زبان، از دکمه F8 برای تغییر زبان استفاده کنید. (دقت دارید که دکمه تغییر زبان همزمان تغییر می‌کند و با فیلدهای دیگر هم تداخلی ندارد!)

    مثال : http://www.ashoob.net/farsitype/
    منبع : ashoob.net
     

    پیوست ها:

    • farsitype.rar
      اندازه فایل:
      کیلوبایت 4.2
      نمایش ها:
      227
    نوشته شده توسط arinolan در ‏6 ژانویه 2008
    jamalr، saeedfweb، EMIRATES و 7 نفر دیگر از این ارسال تشکر کرده اند.
  2. amir-haghighi

    amir-haghighi Member

    ارسال‌ها:
    331
    تشکر شده:
    65
    امتیاز دستاورد:
    16
    به نام او::

    چطور میشه که اون باتنهای زشت رو برداشت و به جای اون باتنهای زیباتر گذاشت؟

    منظورم اون دکمه های rtl و en رو میگم
     
    نوشته شده توسط amir-haghighi در ‏24 ژانویه 2008
  3. omidkhalili

    omidkhalili New Member

    ارسال‌ها:
    13
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    سلام دوست من منامید هستم من میخوام اموزش برنامه نویسی css رو یاد بگیرم می تونی منو کمک کنی با تشکر
    [email protected]
     
    نوشته شده توسط omidkhalili در ‏26 ژانویه 2008
  4. fsfarhad

    fsfarhad Member

    ارسال‌ها:
    65
    تشکر شده:
    16
    امتیاز دستاورد:
    6
    دوست عزیز خیلی ممنون از script ی كه آماده كردید ... خیلی عالی هست ...
    فقط من چند مورد به نظرم اومد كه می خواستم مطرح كنم شاید در نسخه بعدی ایده خوبی باشه ...
    یكی اینكه ما تا به حال در سیستم هایی كه كار كردیم ، و خودتون هم با اونها مواجه بودید ، برخی مقادیر فیلد ها رو باید به صورت (فقط) انگلیسی وارد كرد ، مثل فیلد های email , username , password ... البته در برخی سیستم ها ممكنه اجازه برای وارد كردن فیلد های با مقادیر فارسی هم وجود داشته باشه ولی اگر این امكان بتونه ایجاد بشه كه اون فیلد فقط مقادیر انگلیسی رو بپذیره و از ورود كاراكتر های فارسی جلوگیری كنه خیلی بهتر می شه ... این كار می تونه با یك علامت EN كه Disable هم شده باشه انجام بشه ... همین طور در این صورت direction هم باید حتما به LTR تبدیل بشه ... و اون هم قابل تغییر نباشه ... (به دلیل وجود كاراكتر های فقط انگلیسی)

    ایده های دیگه ای هم می شه در این قالب ایجاد كرد كه می تونه مفید باشه ... یه ایده دیگه می تونه دریافت یك تاریخ شمسی به صورت on time validator باشه یعنی یه فیلد ورود تاریخ شمسی كه اولا فقط مقادیر عددی انگلیسی رو بپذیره و در ثانی تعداد ۸ كاراكتر رو حداكثر بپذیره (می گم ۸ كاراكتر چون دو تا كاراكتر / به صورت پیشفرض در خود فرم قرار می گیره و لزومی به ورود اون نیست) ... اگر مایل باشید من خودم هم می تونم تو این مورد كمك كنم ...

    بازم ممنون از script بسیار كاربردی تون ...

    فرهاد سخایی
    Farhad Sakhaei
     
    نوشته شده توسط fsfarhad در ‏14 فوریه 2008
  5. Term1n4t0r

    Term1n4t0r Member

    ارسال‌ها:
    33
    تشکر شده:
    9
    امتیاز دستاورد:
    6
    عالی بود!
     
    نوشته شده توسط Term1n4t0r در ‏14 فوریه 2008
  6. zoghal

    zoghal Active Member

    ارسال‌ها:
    285
    تشکر شده:
    51
    امتیاز دستاورد:
    28
    ممنون عالی بود
     
    نوشته شده توسط zoghal در ‏27 فوریه 2008
  7. shahinSssS

    shahinSssS Member

    ارسال‌ها:
    35
    تشکر شده:
    2
    امتیاز دستاورد:
    6
    مرسی.موفق باشی
     
    نوشته شده توسط shahinSssS در ‏28 فوریه 2008
  8. smehdi118

    smehdi118 New Member

    ارسال‌ها:
    19
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    اسکریپت تاریخ شمسی

    من یک مشکل دارم. میخواهم یک اسکریپت برای تاریخ شمسی در فرانتپیج که اتوماتیک هر روز آپدیت بشه. لطفا مراحل قرار دادن آن را در کد توضیح دهید.
     
    نوشته شده توسط smehdi118 در ‏23 می 2008

به اشتراک بگذارید