نوشته شده توسط : رضا

 

امروز با در خواست یکی از بازدید کنندگان در مورد خاصیت float و جاوا اسکرپت صحبت میکنیم. احتمالاً با خاصیت float در CSS آشنایی دارید. این خاصیت به ویژه وقتی مورد استفاده قرار میگیرد که طراح قصد داشته باشد بدون استفاده از جدولها چهارچوب صفحه را طراحی کند.

این خاصیت باعث میشود تا یک بلوک HTML بسته به مقداری که به این ویژگی داده میشود تا حد امکان در سمت چپ یا راست المنت والد آن نمایش داده شود، به طوری که سایر المنتها و متن موجود در المنت والد در اطراف بلوک مورد نظر قرار گیرند. توضیح بیشتر در مورد این خاصیت مربوط به بخش آموزش CSS هست بنابراین به همین مقدار توضیح بسنده میکنیم.

برای اختصاص دادن یک ویژگی CSS به المنتهای HTML از شیء style استفاده می شود. اما این نکته را باید در نظر داشته باشیم که float از کلمات کلیدی رزرو شده در جاوا اسکرپت است. به همین دلیل نمیتوانیم از متد style.float برای این منظور استفاده کنیم.

برای جلوگیری از تداخل بین float مورد استفاده در CSS و کلمه کلیدی float در جاوا اسکرپت به منظور اختصاص این ویژگی به المنتهای HTML از متد cssFloat استفاده میکنیم. برای درک بهتر میتوانید به مثال زیر در دو حالت قبل و بعد از اختصاص این ویژگی با به المنت توجه کنید:


بلوک مورد نظر قبل از اختصاص ویژگی

این متن قبل از اختصاص ویژگی به المنت در زیر بلوک نمایش داده میشود


قبل از اختصاص ویژگی float:

بلوک مورد نظر قبل از اختصاص ویژگی

این متن قبل از اختصاص ویژگی به المنت در زیر بلوک نمایش داده میشود

کد مربوط به اعمال ویژگی با استفاده از جاوا اسکرپت:



بلوک مورد نظر قبل از اختصاص ویژگی

این متن قبل از اختصاص ویژگی به المنت در زیر بلوک نمایش داده میشود





و در انتها این چیزی هست که در مرورگر نمایش داده خواهد شد:

بلوک مورد نظر پس از اختصاص ویژگی

این متن پس از اختصاص ویژگی به المنت در کنار بلوک نمایش داده میشود


 

مقادیر زیر را میتوان برای متد cssFloat به کار برد:

noen :
این مقدار پیش فرض متد هست و تأثیر float را بر روی المنت خنثی میکند.
right :
این مقدار باعث می شود تا بلوک مورد نظر تا حد امکان در سمن راست المنت والد خود قرار گیرد.
left :
این مقدار باعث میشود تا بلوک مورد نظر تا حد امکان در فضای سمت چپ المنت والد خود قرار گیرد.

در پایان این مقاله باید به این نکته اشاره کنم که مقادیر متد cssFloat از نوع رشته ای (String) هستند پس باید در کد جاوا اسکرپت در کوتیشن نوشته شوند.



:: موضوعات مرتبط: تنظیم خاصیت float در جاوا اسکرپت , ,
:: برچسب‌ها: تنظیم خاصیت float برای عناصر HTML از طریق جاوا اسکرپت , جاوا اسکریپت , java script , اموزش جاوا اسکریپت ,
:: بازدید از این مطلب : 391
|
امتیاز مطلب : 79
|
تعداد امتیازدهندگان : 20
|
مجموع امتیاز : 20
تاریخ انتشار : پنج شنبه 14 بهمن 1389 | نظرات ()
نوشته شده توسط : رضا

 

بیایید فرض کنیم می خواهیم نام فردی را قبل از ورود به صفحه بپرسیم و سپس نام آنها را در صفحه برای خودشان نمایش دهیم. این کار را با استفاده از جاوااسکرپت می توان انجام داد. فرمانی که برای این کار استفاده می شود به این صورت است:

prompt('سؤال شما', ' ');

این فرمان یک پنجره را قبل از باز شدن صفحه نمایش می دهد که سؤال شما در آن پرسیده می شود و بیننده می تواند جواب خود را در کادری که برای او در نظر گرفته شده بنویسد. دو سینگل کوت بعدی جواب پیش فرض شما برای سؤال است. اگر شما چیزی بین این دو سینگل کوت ننویسید، بیننده با یک لیست خالی، آماده برای نوشتن مواجه می شود. این پیغام قبل از بارگذاری صفحه نمایش داده می شود پس شما می توانید پاسخ بیننده را در صفحه نمایش دهید.
اگر مثالی در این مورد می خواهید لینک زیر را کلیک کنید. در صفحه مثال نام شما پرسیده می شود و پس از وارد کرده آن، نام شما در صفحه جدید نمایش داده می شود:

لینک صفحه آزمایشی

حالا به سراغ اسکرپتی که این کار را انجام می دهد می رویم. توجه داشته باشید که دستورات prompt و if/else در بخش HEAD صفحه وارد می شوند ولی نام کاربر در بخش BODY صفحه مشاهده می شود.





اولین چیزی که اتفاق می افتد این است که متغیر yourname مقداری را که کاربر برای آن وارد می کند به خود می گیرد. پس مقدار متغیر yourname معادل استرینگی است که نام کاربر را می سازد.

دستور if/else نام « ناشناس » را در صورتی که کاربر نامی را وارد نکند به عنوان مقدار متغیر yourname قرار می دهد. این دستور چک می کند که اگر نامی وارد نشود (null) و یا اگر فضای خالی وارد شود، مقدار « ناشناس » را به متغیر yourname می دهد.

در بخش body متن دوباره از تگ script استفاده می کنیم تا کدهای جاوا اسکرپت از بقیه متن html متمایز شود. در این قسمت ما از یک فرمان جدید یعنی ;(" ")document.write استفاده کرده ایم. این همان چیزی است که به متغیر yourname اجازه نوشته شدن در صفحه html را می دهد. ما در این پیغام دو استرینگ را به علاوه متغیر yourname در صفحه می نویسیم. متغیر yourname در این فرمان بین دو دابل کوت قرار نمی گیرد چون یک مقدار است نه یک استرینگ، (البته مقدار متغیر yourname یک استرینگ است). به دلیل اینکه متغیر yourname یک استرینگ نیست ما از دو علامت بعلاوه در ابتدا و انتهای آن استفاده می کنیم. این سری نوشته ها مرورگر را وادار می کند ابتدا یک استرینگ سپس مقدار متغیر و سپس استرینگ دوم را بنویسد. چون ما در حال نوشتن یک کد جاوا اسکرپت هستیم برای اینکه بتوانیم متنی را در صفحه بنویسیم نمی توانیم مانند نوشتن متن در html عمل کنیم، و باید متن مورد نظر را بین دابل کوت و در قالب استرینگ در صفحه بنویسیم.

شاید متوجه شده باشید تگهای پایانی h1 و center به گونه ای متفاوت با قبل نوشته شده اند (

). این تفاوت بدین دلیل است که اسلش در جاوا اسکرپت به معنای تقسیم است و برای جلوگیری از اشتباه شدن آن با علامت تقسیم از یک بک اسلش قبل از آن استفاده می کنیم. در نتیجه استفاده از یک بک اسلش ( \ ) و بلافاصله بعد از آن یک اسلش ( / )


 


:: موضوعات مرتبط: کادرهایprompt , ,
:: برچسب‌ها: درخواست اطلاعات از کاربر , جاوا اسکریپت , java script , اموزش جاوا اسکریپت ,
:: بازدید از این مطلب : 441
|
امتیاز مطلب : 90
|
تعداد امتیازدهندگان : 23
|
مجموع امتیاز : 23
تاریخ انتشار : پنج شنبه 14 بهمن 1389 | نظرات ()
نوشته شده توسط : رضا

 

مرورگر ها به صورت پیش فرض آدرس و حتی خود صفحاتی را که کاربر مشاهده می کند ذخیره می کنند. این آدرسها به ترتیبی که کاربر آنها را مشاهده کرده است در تاریخچه (history) مرورگر ثبت می شوند و دکمه های Back و Forward پنجره مرورگر بر اساس این تاریخچه کار می کنند. با استفاده از جاوا اسکرپت می توانیم به این تاریخچه دسترسی داشته باشیم و با کمک آن مسیر کاربران را هدایت کنیم.

ما برای کار با تاریخچه مرورگر در اینجا از دکمه های HTML استفاده می کنیم که با کمک رویداد onclick در هنگام کلیک کردن روی این دکمه ها دستورات مورد نظر ما اجرا خواهند شد. در اینجا می توانید کد HTML مربوط به ساخت این دکمه ها را مشاهده کنید (البته مقدار مربوط به شناسه onclick مربوط به دستورات جاوا اسکرپت است که بعداً وارد خواهد شد) :

برای آشنایی بیشتر با رویداد های HTML می توانید از صفحه رویدادهای مربوط به صفحه کلید و ماوس در HTML استفاده کنید. (لینک در صفحه جدید باز خواهد شد)

دستورات مختلفی برای کار با تاریخچه مرورگر وجود دارد که همه آنها از شیء history استفاده می کنند. در ادامه می توانید تعدادی از این دستورات را که با بیشتر مرورگرها کار می کنند مشاهده کنید


history.back()

از این فرمان می توانید جهت هدایت کاربران به صفحه ای که قبل از صفحه کنونی در پنجره مرورگر مشاهد کرده اند استفاده کنید. این دستور دقیقاً مانند دکمه Back در پنجره مرورگر عمل می کند و در صورتی که صفحه کنونی اولین صفحه ای باشد که از زمان باز شدن پنجره نمایش داده شده باشد این دستور کاربردی ندارد. برای مشاهده یک نمونه از کاربرد این دستور می توانید لینک را کلیک کنید :

برای مشاهده کاربرد دستور ()history.back اینجا را کلیک کنید

در اینجا می توانید کئ مورد استفاده در مثال بالا را مشاهده کنید :


history.forward()

در صورتی که بازدید کننده قبلاً از دکمه Back در مرورگر خود استفاده کرده باشد یا با استفاده از دستور
()history.back به صفحه قبلی باز گشته باشد می توانیم از دستور ()history.forward برای هدایت بازدید کننده به صفحه ای که پس از صفحه کنونی باز کرده است استفاده کنیم. این دستور کاربردی مشابه دکمه Forward در پنجره مرورگر دارد و کاربرد آن عکس کاربرد ()history.back است.

دکمه زیر با استفاده از دستور ()history.forward شما را به صفحه ای که برای مثال مربوط به بازگشت به صفحه قبلی مشاهده کرده اید هدایت می کند :

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


history.go()

با استفاده از دستورهای ()history.back و ()history.forward فقط امکان این وجود دارد که کاربران را یک صفحه به عقب یا جلو هدایت کنیم. اگر بخواهیم بازدید کننده را به چندین صفحه عقب یا جلو هدایت کنیم باید از دستور ()history.go استفاده کنیم.


1- استفاده از مقداری مثبت برای ()history.go

اگر برای دستور ()history.go از مقداری مثبت استفاده شود کاربر به همان تعداد صفحه در تاریخچه مرورگر به جلو هدایت می شود. به کد زیر توجه کنید :

کد بالا دکمه ای را می سازد که کلیک کردن بر روی آن همان کاری را انجام می دهد که سه بار فشار دادن دکمه Forward در پنجره مرورگر انجام می دهد.

در صورتی که دستور به صورت (1)history.go نوشته شود مانند دستور ()history.forward عمل می کند.


2- استفاده از مقدار صفر برای ()history.go

در صورتی که این دستور به صورت (0)history.go نوشته شود باعث باز بارگذاری مجدد همان صفحه خواهد شد. برای مثال به کد زیر و دکمه ساخته شده با آن توجه کنید :

این هم دکمه ساخته شده :


3- استفاده از مقادیر منفی برای ()history.go

اگر بخواهیم کاربر را چند صفحه در تاریخچه مرورگر به عقب هدایت کنیم می توانیم برای دستور ()history.go از مقادیر منفی استفاده کنیم. برای مثال به کد زیر توجه کنید :

این کد دکمه ای را می سازد که وقتی کاربر آنرا کلیک کند به سومین صفحه ای که قبل از صفحه کنونی در پنجره مرورگر بازدید کرده است هداین می شود. کاربرد این دکمه در اینجا مشابه سه بار فشار دادن دکمه Back در پنجره مرورگر است.


history.length

با استفاده از دستور history.lentgh می توانید تعداد صفحاتی را که در تاریخچه مرورگر وجود دارد پیدا کنید. یعنی با استفاده از این دستور می توانیم به تعداد صفحاتی که از زمان باز شدن پنجره مرورگر در آن نمایش داده شده است پی ببریم. برای مثال می توانید با کلیک کردن بر روی لینک زیر تعداد صفحات ذخیره شده در تایریخچه پنجره مرورگر خود را پیدا کنید :

نمایش تعداد صفحات موجود در تاریخچه مرورگر

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



:: موضوعات مرتبط: آموزش کار با تاریخچه مرورگر , ,
:: برچسب‌ها: آموزش کار با تاریخچه مرورگر با استفاده از جاوا اسکرپت , جاوا اسکریپت , java script , اموزش جاوا اسکریپت ,
:: بازدید از این مطلب : 394
|
امتیاز مطلب : 86
|
تعداد امتیازدهندگان : 23
|
مجموع امتیاز : 23
تاریخ انتشار : پنج شنبه 14 بهمن 1389 | نظرات ()
نوشته شده توسط : رضا
ما برای نوشتن اسکرپت با استفاده از دکمه ها، ابتدا باید بدانیم چگونه می توان یک دکمه را در یک صفحه قرار داد. برای این کار شما باید از تگهای 
در اطراف تگ دکمه استفاده کنید. در مثال زیر نمونه یک HTML که یک دکمه را در یک صفحه قرار می دهد آورده شده است:


این فرمان یک دکمه را در صفحه شما قرار می دهد، اما اگر روی آن کلیک کنید اتفاقی نمی افتد...

در زیر کار هر قسمت از فرمان بالا را می بینیم:


  1. این قسمت یک فرم را ایجاد می کند بنابر این ما می توانیم یک دکمه بسازیم.

  2. این تگ به ما اجازه می دهد نوعی ناحیه ورودی بسازیم.
  3. "type="button
    این فرمان ناحیه ورودی ما را به عنوان یک دکمه تعریف می کند.
  4. "اینجا کلیک کنید"=value
    این متنی است که افراد روی دکمه می بینند. شما می توانید هر چیزی را که می خواهید بینندگانتان روی دکمه ببینند اینجا بنویسید.
  5. "name="button1
    شما می توانید برای مراجعات بعدی یا احتمالاً استفاده در یک اسکرپت به دکمه خود یک نام بدهید.

احتمالاً شما نمی خواهید یک دکمه بسازید که کاری انجام نمی دهد. در زیر یک فرمان جاوا اسکرپت آورده شده است که مرورگر را مجبور می کند وقتی دکمه را کلیک کردید عکس العمل نشان دهد:

onClick="javascript command"

فقط این فرمان را در تگ INPUT قرار دهید که دکمه را با آن ساختید، مانند زیر:

برای مثال ما می توانیم مانند فرمان onMouseover در این دکمه نیز استفاده کنیم و متنی را در نوار وضعیت پنجره چاپ کنیم!


onClick="window.status='متن خود را اینجا بنویسید'; return true">

حالا دکمه را فشار دهید و به متن نوار وضعیت نگاه کنید:

شما می توانید با استفاده از دکمه ها به بینندگان خود اجازه دهید رنگ زمینه صفحه را برای خودشان تغییر دهند. فقط از فرمان زیر به جای فرمان window.status استفاده کنید:

document.bgColor='رنگ مورد نظر به زبان انگلیسی نوشته شود'

فرمان زیر را به عنوان تمرین فرمان onClick وارد کنید:



حالا شما دکمه ای مانند زیر دارید که با کلیک کردن بر روی آن زمینه صفحه به رنگ زرد در می آید!

شما می توانید به هر تعداد که می خواهید از این دکمه ها اضافه کنید، فقط مطمئن شوید که آنها گزینه بازگشت به حالت اولیه را نیز داشته باشند. اسکرپت زیر به شما چهار گزینه می دهد : سفید، زرد، قرمز و آبی . می توانید از دکمه «بازگشت به رنگ اولیه!» برای بازگرداندن تصویر زمینه این صفحه استفاده کنید. کدی که در این صفحه از آن استفاده شده است به دلیل وجود تصویر زمینه کمی با کد زیر متفاوت است ولی کارایی آن تفاوتی ندارد.


name="button6" onClick="document.bgColor='white'">

name="button3" onClick="document.bgColor='yellow'">

name="button4" onClick="document.bgColor='red'">

name="button5" onClick="document.bgColor='#66CCFF">

برای دکمه چهارم به جای نام رنگ از معادل هگزادسیمال رنگها استفاده شده است. برای یافتن معادل هگزادسیمال رنگها و توضیح درباره آنها می توانید به این صفحه مراجعه کنید.

حالا شما سه دکمه دارید، آنها را امتحان کنید!





در اسکرپت آخری که در این قسمت بررسی می کنیم، اجازه می دهیم تا یک دکمه به عنوان یک لینک عمل کند. به این منظور فقط فرمان زیر را برای فرمان onClick استفاده کنید:

window.location='URL'

 برای مثال این هم اسکرپتی که شما را به صفحه آموزش جاوا اسکرپت ما می برد:


onClick="window.location='./'">


:: موضوعات مرتبط: دکمه ها و موارد استفاده آنها , ,
:: برچسب‌ها: دکمه ها و موارد استفاده آنها , جاوا اسکریپت , java script , اموزش جاوا اسکریپت ,
:: بازدید از این مطلب : 306
|
امتیاز مطلب : 88
|
تعداد امتیازدهندگان : 23
|
مجموع امتیاز : 23
تاریخ انتشار : پنج شنبه 14 بهمن 1389 | نظرات ()